私はこの大量割り当ての問題について少し混乱しています。これが私の質問です
次の属性を持つユーザーモデルがあるとします。名前ログインパスワード電子メール
編集中に、更新メソッドがトリガーされます。
def update
@user = User.find(params[:id])
if @user.update_attributes(params[:user])
....
end
私の頭の中では、パスワード/電子メール/ログインが危険にさらされたくないので、これらの属性のすべてではないにしてもほとんどを保護することは理にかなっています。だから私はモデルでこれを行います
attr_accessible:name
したがって、名前以外のすべての属性を一括で割り当てることはできません。
これを行うと、有効な編集フォームはどのように機能しますか?更新メソッド@user.email= params [:user] [:email]などで属性を1つずつ割り当てる必要がありますか?それとも私は何かを(おそらく)誤解していますか?
ありがとう!
編集:
具体的には:
通常、admin属性が保護された例が表示されます。そしてそれは理にかなっています。
しかし、パスワードや電子メールの属性はどうですか?それらは通常保護されていません。パスワードや電子メールが保護されないのはなぜですか?これは、誰かが電子メールをリセットしてパスワードをリセットしたり、パスワード属性をリセットしてシステムにアクセスしたりする可能性があることを意味する可能性があります。