ruby-on-rails - Rails 4 设计多用户模型 STI

标签 ruby-on-rails devise sti

我正在使用 Devise 和 Rails 4。我想添加多个用户模型(admin、usertype1、usertype2),以便它们从主用户模型继承。我搜索了很多帖子,得出的结论是我可能使用我不想要的CanCan,或者我可能使用Single Table Inheritance。

我的看法是将 type 字符串列添加到我使用 Devise 创建的主要用户模型。我还需要从父类扩展每个子类,如下所示:

class Admin < User
end

class Usertype1 < User
end

class Usertype2 < User
end

我的问题是:接下来我该做什么?我究竟如何知道如何访问类型列?我是否还需要为 current_user 辅助方法覆盖 Devise Controller,以便我可以拥有 current_admin 等?

最佳答案

我不确定这是否真的回答了最初的问题。我正在尝试为 Devise 设置多个 session Controller ,看起来这个用例确实需要多个模型。当我有一个工作版本时会回发。

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

相关文章:

ruby-on-rails - rails 3 路线堆栈级别太深设计

ruby-on-rails - Rails 5 - 对象关系阻抗以及如何构造多个继承的类/表

ruby-on-rails - 将 STI 和多态与 Rails 4 结合

ruby-on-rails - Rails 4 中的单表继承

ruby-on-rails - 确保 ElasticSearch 与数据库同步

ruby-on-rails - 载波:将版本名称移到文件名的末尾,而不是前

mysql - 在 Ubuntu 上运行 Rails 时遇到问题

java - 模糊你的 Ruby 代码?

facebook - 使用 rspec 测试omniauth回调时设置env

ruby-on-rails - Ruby on Rails 基于角色的身份验证系统,如何使用不同的角色?