我已经看到了许多使用 Accepts_nested_attributes_for 的示例,但其中只有少数用于 json POST/PUT,并且没有一个对我有帮助:/
我的应用程序将用于创建表单。
因此,一个表单有很多 form_rows,而一个 form_row 可以有很多选择(如果它是单选)。所以,我有这样的表单模型:
class Form < ActiveRecord::Base
attr_accessible :name
has_many :form_rows
accepts_nested_attributes_for :form_rows
end
我的控制器看起来像这样:
def update
@form = Form.find(params[:id])
@form.update_attributes!(params[:form])
end
这是我要发送的 json
{
"name": "form test 4",
"form_rows_attributes": [
{
"domtype": "Input",
"label": "Super row new"
}
]
}
在我的场景中,表单创建只需要一个名称,然后用户添加 form_rows。
当我这样做时,名称会正确更新,但根本不会创建 form_rows。我的控制台中没有错误,只是表单的更新。
我究竟做错了什么?