diff --git a/lib/fast_jsonapi/serialization_core.rb b/lib/fast_jsonapi/serialization_core.rb index 6dea90e..de138cd 100644 --- a/lib/fast_jsonapi/serialization_core.rb +++ b/lib/fast_jsonapi/serialization_core.rb @@ -185,11 +185,7 @@ module FastJsonapi return object.id end - if relationship[:relationship_type] == :has_one - record.public_send(relationship[:object_method_name]).try(:id) - else - record.public_send(relationship[:id_method_name]) - end + record.public_send(relationship[:id_method_name]) end end end diff --git a/spec/lib/object_serializer_inheritance_spec.rb b/spec/lib/object_serializer_inheritance_spec.rb index b8ba19e..06dba25 100644 --- a/spec/lib/object_serializer_inheritance_spec.rb +++ b/spec/lib/object_serializer_inheritance_spec.rb @@ -30,6 +30,10 @@ describe FastJsonapi::ObjectSerializer do p.user_id = id p end + + def photo_id + 1 + end end class UserSerializer @@ -77,6 +81,10 @@ describe FastJsonapi::ObjectSerializer do a.employee_id = id a end + + def account_id + 1 + end end class EmployeeSerializer < UserSerializer diff --git a/spec/shared/contexts/movie_context.rb b/spec/shared/contexts/movie_context.rb index 64d901d..7871f8b 100644 --- a/spec/shared/contexts/movie_context.rb +++ b/spec/shared/contexts/movie_context.rb @@ -31,6 +31,10 @@ RSpec.shared_context 'movie class' do mt end + def advertising_campaign_id + 1 + end + def advertising_campaign ac = AdvertisingCampaign.new ac.id = 1 @@ -284,7 +288,7 @@ RSpec.shared_context 'movie class' do :owner_id, :owner, :movie_type_id, - :advertising_campaign + :advertising_campaign_id ) ActorStruct = Struct.new(:id, :name, :email, :agency_id, :award_ids)