【问题标题】:Deserializing relationships JSON API ActiveModelSerializer反序列化关系 JSON API ActiveModelSerializer
【发布时间】:2017-12-13 00:26:30
【问题描述】:

我正在使用 ActiveModelSerializers 0.10.2。 - 当我反序列化我的参数时,我无法让我的关系出现。我有一个带有有效负载的 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 序列化器是:

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=&gt;"2017-12-11"}

为什么我的attendeesprojects 关系没有返回?

ActiveModelSerializers 0.10.2 + Rails 5.1.2 + Ruby 2.4.2

【问题讨论】:

    标签: ruby-on-rails active-model-serializers


    【解决方案1】:

    关键的“关系”需要在第一个“数据”中。

    【讨论】:

    • smh。一旦我回到我的工作电脑前将进行测试...谢谢。
    猜你喜欢
    • 2018-10-06
    • 1970-01-01
    • 2018-04-29
    • 2021-01-22
    • 2022-01-20
    • 1970-01-01
    • 2020-03-24
    • 2015-11-02
    • 2012-05-31
    相关资源
    最近更新 更多