在我的项目中,我有三个型号产品,页面和图片。产品has_many :pictures
和accepts_nested_attributes_for :page, :pictures
与products_controller
。
在product_params
我已将def product_params
params.require(:product).permit(:name, :model, :price, page_attributes: [:content], pictures_attributes: [:file])
end
添加为:
Product
但是当我提交表单时Picture
已创建,但Page
并且picture and page unpermitted
未保存。
控制台显示消息List<UIElement>
可能是什么原因?请建议。
答案 0 :(得分:0)
有时我们会忘记语法
在表单页面中,为嵌套属性生成字段时会产生一整天的错误。
只需按照表单中的更改解决问题。
<%= fields_for(product.page) do |fp| %>
更改为
<%= fields_for(:page) do |fp| %>
和 &lt;%= fields_for(product.pictures)do | fpr | %GT; 改为
<%= fields_for(:pictures) do |fpr| %>
我们需要知道,我们总是需要使用符号而不是对象。