Проблема с сериализатором активной модели для объекта Nil - PullRequest
0 голосов
/ 15 марта 2020

ActiveModelSerializers::SerializableResource.new(object.project, include: [collaborator: :pictures]).as_json[:project]

Если значение object.project равно nil, возникает проблема. NoMethodError: неопределенный метод `[] 'для nil: NilClass

1 Ответ

1 голос
/ 15 марта 2020

Это не относится к ActiveModelSerializer (AMS) в конце концов. В Ruby, nil вызывает много NoMethodError, поэтому мы часто избегаем nil s с модификаторами if или unless. Например, в вашем случае мы часто делаем ActiveModelSerializers::SerializableResource.new(object.project, include: [collaborator: :pictures]).as_json[:project] if object.project

...