inohilog

/var/log/inohiro

attr_accessible と attr_protected

attr_accessible

  • 代入を許すカラムを明示的に指定する
    • 追加されている属性以外はprotectedとなる
class User < ActiveRecord::Base
  attr_accessible :handle_name, :mail_address
  ...
end

attr_protected

  • 代入を制限するカラムを明示的に指定する
    • 追加されている属性以外はaccessibleとなる
    • "制限するのは new や attributes= のようにオブジェクトのカラムを一括して扱うメソッドに対してであって、カラムに対応するメソッドを使って代入することは制限しません。"*1
class Photo < ActiveRecord::Base
  attr_protected :id, :path
  ...
end