我目前正在通过REST使用emberjs和rails来处理应用程序。
此外,我正在使用active_model_serializer gem来表示我的数据,但在将EmberData升级到Beta3之后,json期望的关联结构发生了变化。
在指向关联之前,关键是
"object_ids":[1,2]
但现在ember数据预计,该对象为复数
"objects": [1,2]
问题是,如何使用active_model_serializer以这种方式格式化?
我的模特
class ServiceField < ActiveRecord::Base
has_many :services
end
和序列化程序对象
class ServiceFieldSerializer < ActiveModel::Serializer
attributes :id, :name, :description
has_many :services
embed :ids, include: true
end
但这会产生
service_ids: [1,2]
有没有方便的方法来完成复数版本?
答案 0 :(得分:2)
关联接受key
选项,因此您可以执行以下操作:
has_many :services, :key => "services"
我怀疑默认情况下AMS会在某些时候更新为这种语法,因为ember-data和AMS都处于人们放在一起的json api标准的近距离轨道上。