1

devise gemを使用したuserモデルがありますが、どのフィールドにもありませんが、エラーが発生します。attr_accessible

保護された属性を一括割り当てできません

以下の私Userのクラス

class User < ActiveRecord::Base
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, 
         :token_authenticatable  #, :validatable
end
4

4 に答える 4

4

私も同じ問題を抱えています、多分deviseはで何かをしattr_accessibleます。モデルを機能させるには、モデルを設定する必要がありattr_accessibleます。

class User < ActiveRecord::Base
  devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :token_authenticatable #, :validatable`

  # Setup accessible (or protected) attributes for your model
  attr_accessible :first_name, :last_name, :email, :password, :password_confirmation
end

これらのrailscastsエピソードをチェックアウトできます。

http://railscasts.com/episodes/209-introducing-devise

http://railscasts.com/episodes/210-customizing-devise

于 2012-05-29T09:15:04.550 に答える
2

私がattr_protected代わりに置いた場合、attr_accessibleそれは私のために働きます。
参考までに、Ruby1.9.3でRails3.2.3を使用しています

于 2012-05-29T09:48:42.297 に答える
0

Rails 3.2.3以降、デフォルトでは config.active_record.whitelist_attributesinです。一括割り当て可能である必要がある属性を手動で設定する必要があります(または、この動作を無効にするように設定できます)。config/application.rbtrueattr_accessiblewhitelist_attributesfalse

于 2012-05-29T09:15:16.070 に答える
0

attr_accessible:name、:password、:password_confirmationのみを設定し、config \application.rbでconfig.active_record.whitelist_attributes=falseを設定せずに機能しています。attr_accessibleの_form.html.erbから、変数の正しい名前のみを確認してください。

于 2013-04-01T14:30:11.457 に答える