Skip to content

Commit 42d9203

Browse files
aledalgrandeshishirmk
authored andcommitted
Fix confusing error when using include and no relationship was set
If you forgot to set any `has_many` in the serializer and tried to serialize with an `include` you would get: ``` NoMethodError (undefined method `[]' for nil:NilClass): ``` That is not very helpful. Setting the variable with a default case makes sure the right error message gets displayed.
1 parent e3c45d9 commit 42d9203

1 file changed

Lines changed: 2 additions & 1 deletion

File tree

lib/fast_jsonapi/object_serializer.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,8 @@ def validate_includes!(includes)
292292
includes.detect do |include_item|
293293
klass = self
294294
parse_include_item(include_item).each do |parsed_include|
295-
relationship_to_include = klass.relationships_to_serialize[parsed_include]
295+
relationships_to_serialize = klass.relationships_to_serialize || {}
296+
relationship_to_include = relationships_to_serialize[parsed_include]
296297
raise ArgumentError, "#{parsed_include} is not specified as a relationship on #{klass.name}" unless relationship_to_include
297298
raise NotImplementedError if relationship_to_include.polymorphic.is_a?(Hash)
298299
klass = relationship_to_include.serializer.to_s.constantize

0 commit comments

Comments
 (0)