質問は複雑ではないかもしれませんが、私は混乱しています。私は2人のユーザー、すなわち生徒と教師を持っています。私は別々のモデル、コントローラー、ビューが必要です。私は先生に/t/sign_up
を、学生には/s/sign_up
を使って欲しいです。私は認証のためにdeviseを使用していますが、これはアクティブな管理者の仕組みなので、可能です。複数のモデルにdeviseを使用する
3
A
答えて
2
すでに工夫して複数のモデルとビューを生成し、ちょうどパス名を変更したいきた提供、あなたはその設定のconfig/routes.rbを操作を行うことができます。このようなあなたのルートを置き換えます
devise_for :students, path: 's'
devise_for :teachers, path: 't'
:
http://localhost:3000/s/sign_up
http://localhost:3000/t/sign_up
あなたが異なるモデルに基づいて自分の意見を持っているしたい場合は、config.scoped_views = true
config/initializers/devise.rb
内のファイルを設定し、そのモデルのビューを生成することができます
rails g devise:views students
そして、あなたは、各コントローラをカスタマイズしたい場合、あなたはこのような彼らのコントローラーファイルを生成することができます
rails generate devise:controllers students
これは、このようにあなたがそれらを定義することができ、モデル名に基づいてコントローラを作成します。あなたのルート:
devise_for :students, path: 's', controllers: { sessions: "students/sessions" }
関連する問題
- 1. Devise + Omniauth複数のモデル
- 2. モデルでdeviseヘルパーを使用する
- 3. ユーザーを複数のDeviseモデルに分割する時期は?
- 4. devise :: TokenGeneratorをモデルではないモデル内で使用する
- 5. deviseを他のモデルで使用するには?
- 6. 異なるモデルで複数のモデルを使用するMVVM
- 7. 複数の列を使用してモデルを他のモデルにマッピングする
- 8. 複数のテーブルに単一のモデルを使用する
- 9. 複数のモデルを複数のモデルにリンクする
- 10. 複数の類似モデルに単一コントローラを使用するYii2
- 11. ユーザー作成時に複数のモデルを使用する
- 12. DjangoRestFrameworkを使用して複数のモデルにシリアライズする方法
- 13. Django - 認証に複数のモデルを使用する
- 14. Django - 同じモデルに複数の外部キーを使用する
- 15. テンソルフローを複数のモデルに使用する方法
- 16. 複数のモデルに同じスコープを使用する
- 17. 複数のデータベースを使用する場合のモデルの定義
- 18. Django:モデルを使用して複数のテーブルを照会する
- 19. 複数のモデルを1つのビューで使用する.net Mvc
- 20. flask-sqlalchemyで同じモデルの複数のデータベースを使用する
- 21. 複数のPostgreSQLスキーマをRailsモデルで使用する
- 22. MVC3で複数のモデルを使用する方法asp
- 23. Eloquentモデルを複数の方法で使用する
- 24. Facebook API - Railsモデルで複数のリクエストを使用する
- 25. テンソルフローセーバーを複数のモデルで使用する方法は?
- 26. Keras(モデルAPI)を使用した複数入力モデル
- 27. セッション管理にdeviseを使用する
- 28. deviseを持つユーザーとは異なるモデルを使用する方法
- 29. Laravelモデルで複数の句を使用する行数をカウントする
- 30. TFスリムのinception_v3モデルに複数のGPUを使用
お返事ありがとうございます。私はこれを試して、 '/ s/sign_up'は' devise/registrations#new'を参照し、 '/ t/sign_up'は' devise/registrations#new'を参照します。紛争を起こさないだろうか? '/ s /'に新しい 'student'を、'/t/'に新しい教師のインスタンスを作成する方法を知っていますか? – user464
異なるコントローラの動作が必要な場合は、そのモデル専用のコントローラを作成するのは簡単です。私は答えを編集します。 – pyfl88
ありがとうございます。私は、生徒と教師のための別々のコントローラー、すなわち 'controllers/student/devise'と' controllers/teacher/devise'を生成しました。今私のコントローラを使用していますが、私のビューをdevise、すなわち 'rails g devise:views student/devise'と' rails g devise:views teacher/devise'によって生成されたビューを使用していないのです。 – user464