问题可能不那么复杂,但我很困惑。我有两个用户,即学生和教师,对于那些我想要单独的模型,控制器和视图。我希望教师使用fetchColumnFamily
和学生/t/sign_up
。我正在使用设计进行身份验证,我知道这是可能的,因为管理员的工作原理是什么。
答案 0 :(得分:10)
如果您已经使用设计生成了多个模型和视图,并且只想更改路径名,则可以执行配置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" }