我需要做什么才能使创建操作有效?
我有一张带有 has_and_belongs_to_many 关联的表。“新”页面工作正常,但是当我选择 itens 并尝试保存它时会引发错误:
无法批量分配受保护的属性:book_id
我试图设置:
config.active_record.whitelist_attributes = false
但它没有改变任何东西
我的模型:
class Book < ActiveRecord::Base
has_and_belongs_to_many :orbs
attr_accessible :dataf, :datai, :descr, :nome
validates :nome, uniqueness: true, presence: true
end
class Orb < ActiveRecord::Base
belongs_to :orb_type
has_and_belongs_to_many :books
attr_accessible :descr, :nome, :orb_type_id
validates :nome, uniqueness: true, presence: true
end
我的控制器:
def create
@orb = Orb.new(params[:orb])
respond_to do |format|
if @orb.save
format.html { redirect_to @orb, notice: 'Orb was successfully created.' }
format.json { render json: @orb, status: :created, location: @orb }
else
format.html { render action: "new" }
format.json { render json: @orb.errors, status: :unprocessable_entity }
end
end
end
此外,任何人都可以告诉我,当我是 Rails 新手时,我必须做些什么来检查自动框。谢谢!
编辑:将 attr_accessible :book_id 添加到我的 orb 模型会引发错误:
unknown attribute: book_id
它使用 << 操作在控制台上工作。