小编wil*_*_wi的帖子

Rails ActiveModel :: Serializers中的JSON API样式边加载

我正在尝试使用AM :: Serializer 构建JSON API样式API.我遇到了侧载问题.

我希望能够构建如下所示的JSON:

{
    "primaries": [{
        "id": 123,
        "data": "Hello world.",
        "links": {
            "secondaries": [ 1, 2, 3 ]
        }
    }],
    "linked" : {
        "secondaries": [
            {
                "id": 1,
                "data": "test1"
            },
            {
                "id": 2,
                "data": "test2"
            },
            {
                "id": 3,
                "data": "test3"
            }
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

我能够提出的代码如下:

class PrimarySerializer < ActiveModel::Serializer
  attributes :id, :data

  has_many :secondaries, key: :secondaries, root: :secondaries
  embed :ids, include: true
end
Run Code Online (Sandbox Code Playgroud)

这会生成如下所示的JSON:

{
    "primaries": [{
        "id": 123,
        "data": "Hello world.", …
Run Code Online (Sandbox Code Playgroud)

json ruby-on-rails serializer ruby-on-rails-4

6
推荐指数
1
解决办法
2085
查看次数

标签 统计

json ×1

ruby-on-rails ×1

ruby-on-rails-4 ×1

serializer ×1