gpt4 book ai didi

ruby-on-rails - 将设计用于多个模型

转载 作者:行者123 更新时间:2023-12-04 03:26:08 24 4
gpt4 key购买 nike

这个问题可能没有那么复杂,但我很困惑。我有两个用户,即学生和教师,对于那些我想要单独的模型、 Controller 和 View 的用户。我要老师用/t/sign_up和学生 /s/sign_up .我正在使用设计进行身份验证,我知道这是可能的,因为这就是事件管理员的工作方式。

最佳答案

如果您已经使用 devise 生成了多个模型和 View ,并且只想更改路径名,您可以通过配置 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

如果你想拥有基于不同模型的 View ,你可以配置 config.scoped_views = trueconfig/initializers/devise.rb文件并为该模型生成 View :
rails g devise:views students
如果你想自定义每个 Controller ,你可以像这样生成它们的 Controller 文件:
rails generate devise:controllers students
这将根据模型名称创建 Controller ,因此您可以在路由中定义它们:
devise_for :students, path: 's', controllers: { sessions: "students/sessions" }

关于ruby-on-rails - 将设计用于多个模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37145991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com