Ruby on rails rails应用程序用户注册形成多种类型的用户

Ruby on rails rails应用程序用户注册形成多种类型的用户,ruby-on-rails,registration,Ruby On Rails,Registration,我对Rails中针对多种类型用户的用户注册表单的设计有些怀疑 用户要么是普通用户,要么是管理员,要么是供应商。 现在,普通用户只需姓名和电子邮件地址即可注册,而供应商则需要姓名、电子邮件和信用卡、日期、电话等少量额外输入 所以问题是,, 我应该为普通用户和供应商创建两个单独的模型吗? 他们也需要两个单独的登录表单吗?如何管理公共资源用户可以看到所有供应商[仅名称、联系人],反之亦然只读。 而active_admin使用designe并有自己的admin_users表 如果将来我需要使用某种授权方

我对Rails中针对多种类型用户的用户注册表单的设计有些怀疑

用户要么是普通用户,要么是管理员,要么是供应商。 现在,普通用户只需姓名和电子邮件地址即可注册,而供应商则需要姓名、电子邮件和信用卡、日期、电话等少量额外输入

所以问题是,, 我应该为普通用户和供应商创建两个单独的模型吗? 他们也需要两个单独的登录表单吗?如何管理公共资源用户可以看到所有供应商[仅名称、联系人],反之亦然只读。 而active_admin使用designe并有自己的admin_users表

如果将来我需要使用某种授权方案,比如说“cancan”,该怎么办?Ryanb的railscasts描述说,所有管理员、版主、作者都在一个表中,另外还有一列需要区分

在设计web应用程序时,类似情况下的最佳实践是什么? 只是寻找一些指导,而不是代码

谢谢,我真的很感谢你的意见


Atarangp

我将创建一个带有管理员和供应商标志的用户表

非常普遍的答案是不要重复代码或数据。 所以你应该尽量避免使用多个登录表单, 和多个名称/电子邮件列。 通常有一种方法可以做到这一点

进一步考虑:你会处理那些想要输入他们的电话号码的用户吗? 或者以后也成为供应商或管理员

编辑:

如何使用其他输入字段为用户和供应商创建动态视图? 如何使用html表单和所有标记

我想你应该从, 还有一个。 这部电影以前是这样的,但似乎有错别字


指南中有关于和的部分。

Brian,谢谢。我当前的用例有这个简单的需求,尽管正如您所指出的,将来可能会发生变化。拥有一个表肯定会让事情变得简单,但是如何使用附加的输入字段为用户和供应商创建动态视图呢?我对html表单和所有标记都不是很了解,你如何将它们与Rails一起使用?