Я использую active_model_serializers из API в ruby на рельсах, и у меня есть метод контроллера, в котором я сохраняю счет и его вложенные элементы с некоторыми вычислениями, проблема в том, что после включения сериализатора,вложенные атрибуты ограничены, и я не могу получить к ним доступ.
У меня есть код таким образом, согласно некоторой документации, но он не работает
#Controller
def invoice_params
params.require(:invoice).permit(:person_id, :date, sales_attributes: [:reference_id, :quantity, :price])
end
#Model
class Invoice < ApplicationRecord
belongs_to :person
has_many :sales
accepts_nested_attributes_for :sales, allow_destroy: true
end
#Serializer
class InvoiceSerializer < ActiveModel::Serializer
attributes :id, :date, :total, :profit, :consecutive, :person_id
has_many :sales, root: :sales_attributes
belongs_to :person
end
Запрос jsonчто я посылаю:
{
"person_id": 4,
"date": "2019-03-20",
"sales": [
{
"reference_id":1,
"quantity": 90000,
"price": 240
},
{
"reference_id":1,
"quantity": 50000,
"price": 240
}
]
}
Кто-то знает, что случилось? Прежде чем включить гем сериализатора, он работал нормально.
Заранее спасибо!