1

管理コンソールですべてのフィールドをまとめて割り当てることができるように、特定のロールのモデル内のすべてのフィールドに attr_accessible を簡単に適用する方法を探しています。私はこのようなことをしたいと思います:

    class User < ActiveRecord::Base
         attr_accessible :name
         attr_accessible :all, :as => :admin
    end

:all の使用は明らかに機能しません。フィールドがたくさんあるので、それらをすべてリストすることなく、すべてのフィールドに attr_accessible を適用できる簡単な方法はありますか? フィールドを追加するたびにこれを行うことを覚えておく必要はありません。

4

3 に答える 3

2
attr_accessible *column_names, :as => :admin
于 2013-08-20T19:25:47.777 に答える
1

実際に attr_accessible にする必要があるかどうかを検討する機会を提供するため、各フィールドを実際に追加する時間をとってください。とはいえ、これは達成できます:

columns.each do |column|
  attr_accessible column.name.to_sym, :as => :admin
end
于 2013-01-21T03:49:22.633 に答える
0

column の代わりに column_names を使用したいと思っていました:

(column_names - ['col1', 'col2', 'col3']).each do |column|
  attr_accessible column.to_sym
end
于 2013-05-22T07:58:04.283 に答える