Fields filtering with include
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
Research direction
Start in lib/jsonapi/resource_serializer.rb at JSONAPI::ResourceSerializer#supplying_relationship_fields and reproduce the fields[events]=name plus include=establishment case described in the issue. Verify the response hash retains the relationships key while still applying field filtering; the intended behavior should be confirmed before changing the set intersection.
Written by the indexing model from the issue text.
Description
Version 0.9.12
When using fields[events]=name + include=establishment the key relationships disappear from the response hash.
Basic association is events belongs_to establishment
Issue is coming from here:
# JSONAPI::ResourceSerializer#supplying_relationship_fields
def supplying_relationship_fields(resource_klass)
@_supplying_relationship_fields.fetch resource_klass do
relationships = Set.new(resource_klass._relationships.keys.map(&:to_sym))
cur = resource_klass
while cur != JSONAPI::Resource
if @fields.has_key?(cur._type)
# here...
# It always empty the Set
#relationships &= @fields[cur._type]
break
end
cur = cur.superclass
end
@_supplying_relationship_fields[resource_klass] = relationships
end
end
Commenting relationships &= @fields[cur._type] solves this issue. @DavidMikeSimon could you describe your mind here? I know it was a loooong time ago but your help might help to correctly fix this issue.
- Dominant language
- Ruby
- Stars
- 2.3k
- Forks
- 546
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from JSONAPI-Resources/jsonapi-resources
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
-
Difficulty 3/5 1-2 days Newbie friendliness 50/100
JSONAPI-Resources/jsonapi-resources#1488 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
JSONAPI-Resources/jsonapi-resources#1479 · 2 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
JSONAPI-Resources/jsonapi-resources#1477 · 3 comments · 1 reaction ·
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
JSONAPI-Resources/jsonapi-resources#1473 · 1 comment ·
All issues in JSONAPI-Resources/jsonapi-resources
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
simp/pupmod-simp-simp#395 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
simp/pupmod-simp-rsyslog#219 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
simp/pupmod-simp-pupmod#256 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
simp/pupmod-simp-sudo#150 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100