dynamic attr_accessible

概要

attr_accessorをアクセスされるもの全てに設定しておくと、
セキュリティ的に問題があるかもしれないので必要なときだけ
Modelでアクセスを制御したいよねというものだと理解した。

やり方

Modelではattr_accessibleに設定せず、
mass_assignment_authorizerというメソッドに切り出しておいて
必要なときにインスタンスに対して一時的に付与する。

使い道

管理者権限のときとかかな。

コード

以下のコード見れば大体わかるとおもう。

http://rdoc.info/docs/rails/3.0.0/ActiveModel/MassAssignmentSecurity/ClassMethods