ActiveModel :: MassAssignmentSecurity ::嵌套属性出错

嗨我试图在我的rails应用程序中创建一对多的关系。

拳头我创建我的模型

class Produto < ActiveRecord::Base attr_accessible :compra, :descricao, :estoque, :venda has_many :precos accepts_nested_attributes_for :precos end class Preco < ActiveRecord::Base attr_accessible :compra_decimal, :produto_id, :venda_decimal belongs_to :produto end 

然后我创建了我的控制器

 class ProdutosController < ApplicationController def new @produto = Produto.new @produto.precos.build end def create @produto = Produto.new(params[:produto]) if @produto.save? redirect_to produtos_path end end end 

在此之后我创建了我的.html.erb页面:

_形成

  





builder %>

_precos

 



  

然后,当我提交表单时出现此错误:

 ActiveModel::MassAssignmentSecurity::Error in ProdutosController#create Can't mass-assign protected attributes: precos_attributes 

有没有人对它有任何想法?

只需更改您的型号:

 class Produto < ActiveRecord::Base attr_accessible :compra, :descricao, :estoque, :venda, :precos_attributes has_many :precos accepts_nested_attributes_for :precos end