加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 具有自定义根名称的activemodel序列化程序has_

发布时间:2020-12-17 03:49:18 所属栏目:百科 来源:网络整理
导读:我的序列化程序中有一个has_one关系,但设置root :: some_other_root似乎没有任何区别.我在文档中看到他们只使用has_many的不同根名称.所以问题是是否可以在has_one上使用不同的根名称? 给定: class UserSerializer ActiveModel::Serializer attributes :id
我的序列化程序中有一个has_one关系,但设置root :: some_other_root似乎没有任何区别.我在文档中看到他们只使用has_many的不同根名称.所以问题是是否可以在has_one上使用不同的根名称?

给定:

class UserSerializer < ActiveModel::Serializer
  attributes :id
  has_one :address,root: :primary_address
end

收益:

{"user":{"id": 12,"address":{"id":5,"company_name":"widgets co"}}}

预期:

{"user":{"id": 12,"primary_address":{"id":5,"company_name":"widgets co"}}}

解决方法

如果它将作为用户属性的一部分包含在内,请使用key而不是root.宝石回购中有一个 thorough explanation on how to embed associations.示例如下所示:

In Serializer: attribute :title,key: :name
#attributes: { name: 'Some Title' }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读