我对Rails中为多种类型的用户设计用户注册表单有些怀疑。
用户是regular_user,admin_user(我喜欢active_admin)或供应商 现在普通用户只需要姓名和电子邮件地址进行注册,而供应商需要姓名,电子邮件和一些额外的输入,如信用卡,日期,电话号码等。
所以问题是, 我应该为普通用户和供应商创建两个单独的模型吗? 他们还需要两个单独的登录表单吗?如何管理公共资源(用户可以查看所有供应商[仅限姓名,联系人#],反之亦然只读) 虽然active_admin使用devise并拥有自己的admin_users表。
如果将来我需要使用某种授权方案,让我们说'cancan'怎么办? Ryanb的railscast描述了所有管理员,版主,作者都在一个表格中,并附加了一列来区分。
在设计Web应用程序时,类似情况下的最佳做法是什么? 只是寻找一些指导而不是代码。
谢谢,我非常感谢任何意见。
Atarangp
答案 0 :(得分:0)
我会创建一个带有admin和vendor标志的用户表。
- 非常一般的答案是不要复制代码或数据。 所以你应该尽量避免多个登录表单, 和多个名称/电子邮件列。 通常有办法实现这一目标。
进一步考虑:您会处理想要输入电话号码的用户吗? 或者以后还成为供应商或管理员?
编辑:
如何使用其他输入字段为用户和供应商创建动态视图? 以及如何使用html表单和所有标签?
我认为你应该从guides开始, 和demo movie by Ryan Bates。 (电影曾经是on the screencasts page,但似乎有一个错字。)