2012-05-15 20 views
4

我非常小心地遵循RailsGuide並且它的工作非常漂亮,直到步驟11爲止。 通過MultiModel表單添加標籤。 一旦我添加的代碼我得到這個錯誤:Rails指南 - 第11步 - 多模型表單 - MassAssignmentSecurity錯誤

::加載ActiveModel :: MassAssignmentSecurity中的錯誤PostsController#更新 無法大規模指派保護的屬性:tags_attributes

應用程序跟蹤: 應用程序/控制器/posts_controller.rb:65:in block in update' app/controllers/posts_controller.rb:64:in更新'

我已經備份並啓動了幾次,以確定它不是用戶錯誤。 有人可以幫助我通過這一步。我差不多完成了!然後我可以轉到Hartl的教程。 謝謝。

回答

2

這不是你的錯!

部署的入門指南尚未對Rails的更新3.2.3默認的

# in config/application.rb: 

config.active_record.whitelist_attributes = true 

的解決方法是把它添加到您的帖子型號:

# in app/models/post.rb 

class Post < ActiveRecord::Base 
    attr_accessible :tags_attributes 
    ... 

順便說一句,這整個部分從前嚮導的來源中刪除,你可以在https://github.com/rails/rails/blob/master/guides/source/getting_started.textile找到。

+1

http://guides.rubyonrails.org/getting_started.html中可用的指南的穩定版本是Rail Reo中3-2穩定分支中可用的版本。主分支中的指南目前正在重寫爲更加初學者友好,並可在http://edgeguides.rubyonrails.org/getting_started.html中找到。這是一項正在進行的工作,目前尚未被初學者100%使用。 –

+1

啊......我很懷疑。另外,這解釋了我的post.rb文件中的神祕額外行,它具有attr_accessible for:content,:name,:title,我沒有輸入。也許導引中的生成或遷移步驟之一添加了它?非常感謝。我希望這可以幫助其他用戶。 – Will

+0

我在我的application.rb中有'config.active_record.whitelist_attributes = true',在我的attr_accessible中有我的pluralmodalname_attributes。但是我仍然有這個問題:/? – CanCeylan

相關問題