我使用的是ActiveModelSerializers 0.10.2。 - 当我对我的params进行反序列化时,我无法让我的关系显示出来。我有一个带有效负载的POST请求:
{
"data": {
"type": "project_toolbox_talks",
"attributes": {
"date": "2017-12-11"
}
},
"relationships": {
"attendees": {
"data": [
{
"type": "atendees",
"id": "559ff2c9-beb6-47cd-9757-66104617403b"
}
]
},
"projects": {
"data": {
"type": "projects",
"id": "d9b28ffd-6f30-4dd0-a227-720caa9b881e"
}
}
}
}
我的ProjectToolboxTalks的Serializer是:
module API
module V1
class ProjectToolboxTalkSerializer < ActiveModel::Serializer
attributes :date
has_one :toolbox_talk
has_one :superintendent
has_one :project
has_many :attendees
has_many :project_toolbox_talk_users
end
end
end
我打电话给我的控制器:
ActiveModelSerializers::Deserialization.jsonapi_parse!(
params, only: [:date, :attendees, :projects]
)
唯一返回的是{:date=>"2017-12-11"}
为什么我的attendees
或projects
关系没有被退回?
ActiveModelSerializers 0.10.2 + Rails 5.1.2 + Ruby 2.4.2
答案 0 :(得分:2)
关键'关系'需要在第一个'数据'中。