【发布时间】:2021-10-22 19:22:29
【问题描述】:
我在我的项目中创建了多对多关联,它看起来像这样:
class A < ApplicationRecord
has_many :C, through: :B
accepts_nested_attributes_for :carray
end
class B < ApplicationRecord
belongs_to :A
belongs_to :C
end
class C < ApplicationRecord
has_many :A, through: :B
end
额外的事情是我想在A和C之间的每个连接中保存数字,所以B表还有列号:整数。表 A 和 C 有名称列。我的 AController 看起来像这样:
class RController < ApplicationController
...
def create
@a = A.new(a_params)
@a.save
end
...
def a_params
params.require(:a).permit([:name, carray_attributes: [:c_id, :number]])
end
end
当我发送 json 时:
{
"name" : "A name",
"carray_attributes":
[
{
"id_c": "3",
"number": "23"
},
{
"id_c": "3",
"number": "15"
}
]
}
我收到错误 UnknownAttributeError: unknown attribute 'number' for C。你知道如何将数字保存到表 B 中吗?
【问题讨论】:
标签: ruby-on-rails json ruby rails-api