保護された登録フィールドをdeviseに追加するにはどうすればよいですか?

私はRails 3.1の認証にdeviseを使用しています。ユーザーは自分のサイトの管理者によって登録されます(それは学校内部のサイトです。未知の人は登録しないでください)。各ユーザーは登録時に役割(例:student、teacher、admin、resource_person)に割り当てられます。アクティビティの承認に使用されます。

今私はユーザーが自分の役割を編集できるようにしたくないので、 attr_accessible の下には置かれません。このため、ユーザーを登録するときは、パラメータからロールを手動で設定する必要があります。 deviseでこれを行う簡単な方法はありますか?またはdevise登録コントローラーを継承するカスタムコントローラーを作成する必要がありますか?

1

1 答え

単に管理者としてユーザーを管理したいと思っているとすれば、ユーザーモデル用のCRUDインターフェイスを作成するのが最善の方法だと思います(https://github.com/plataformatec/devise/wiki/How-To:- Manage-users-through-a-CRUD-インターフェース)。

ユーザーが一部のモデル(パスワードの変更など)を管理できるようにするには、単に役割に応じてモデルを承認するだけです。

1
追加された
問題ない。 Deviseはちょうどとてもうまくて、時々忘れるのは、私たちが自分で管理できる単純なモデルを使っているだけです。D
追加された 著者 David Sulc,
ああ、それは理にかなっています、私はそんなことは考えていませんでした。ありがとう!
追加された 著者 Rahul Sekhar,