Rails の新しい動的 attr_accessible 機能を使用したいと思います。ただし、各ユーザーには多くの役割があります (私は宣言型承認を使用しています)。したがって、モデルには次のものがあります。
class Student < ActiveRecord::Base
attr_accessible :first_name, :as=> :admin
end
そして、これをコントローラーに渡します:
@student.update_attributes(params[:student], :as => user_roles)
user_roles はシンボルの配列です:
user_roles = [:admin, :employee]
配列内のシンボルの 1 つが宣言された attr_accessible と一致するかどうかをモデルで確認したいと考えています。したがって、重複は避けます。
たとえば、user_roles =[:admin, :employee] とします。これは機能します:
@student.update_attributes(params[:student], :as => user_roles.first)
しかし、すべてのユーザーが多くの役割を持っているため、1 つの役割またはシンボルしか検証できなければ意味がありません。
どんな助けでも大歓迎です
** * ** * ** * ** * ***更新* ** * ** * ** * ** * ** * ** * ** * **
ここからサンプル アプリをダウンロードできます: https://github.com/jalagrange/roles_test_app
このアプリには 2 つの例があります。そして、コントローラーの更新アクションで「user_roles.first」を使用しているため、名前のみを変更できる人。お役に立てれば。他の誰かがこの問題を抱えているに違いないと確信しています。