我正在教導自己通過PragProg的Rails(顯然已經過時 - 我正在使用Rails 3.2.3)Rails for PHP Developers。我發現這本書沒有提到的這個seeds.rb文件。我試圖爲許多事情建立適當的種子條目,它給我can't mass-assign protected attributes
。Rails attr_accessible僅適用於seed.rb?
經過一番搜索之後,看起來我唯一的選擇是打開attr_accessible
以上的這些東西,或關閉阻止批量分配的默認功能。但是我想保持這個設定所暗示的安全。我不希望這些條目在種子播種後進行編輯。我只需要把它們放入數據庫中。
我在這裏沒有看到什麼?如何在不關閉保護的情況下播種這些數據?看起來種子應該是一種特殊情況,允許在不允許的情況下進行批量分配。
我認爲我的問題的一部分是我不完全瞭解所述保護的效用。如果我可以說'x.name =「blah」'和'x.phone =「blahblah」'什麼阻止我說'x = X.new(name =>「blah」,phone =>「blahblah」 )'在安全方面做?我爲什麼要擔心通常不會/不應該改變保護的事情? –