嗨,我试图抓住蛋糕(被扔到深渊,没有太多帮助,教程似乎有点稀缺)
我的问题是我们有三种不同类型的用户 - 业务,业务用户,个人,我们为每个三个用户创建了一个表,模型和控制器。使用三种类型的控制器时是否可以创建一个登录页面,或者我们是否需要将所有内容合并到一个控制器中并从那里开始?
很抱歉这样一个初学者问题,但在这一点上我有点绝望。
商业 - 拥有许多商业用户顺便说一句
听起来你的模型需要一些调整。我建议以下架构:
users table (User model)
- Contains information shared by all user types (name, password, etc.)
business table (Business model)
- Contains information unique to a business
business_users (BusinessUser)
- Contains information unique to a business user
individuals (Individual)
- Contains information unique to an individual (can this be combined with the User model?)
现在,您可以像这样链接它们:
User hasOne Business
User hasOne BusinessUser
User hasOne Individual
Business belongsTo User
BusinessUser belongsTo User
Individual belongsToUse
企业将被定义为具有关联业务模型等的用户。
您可以创建三个单独的登录名,如果它们是三个完全不同的系统,永远不会共享数据或需要交互。
但重新思考可能是一个更好的主意。
User hasMany UserGroups
.
UserGroup
- id
、role
(例如商业用户、个人)。此方法允许您在需要时进行扩展,而无需为不同的角色创建新的控制器。这确实取决于您试图通过这些"用户组"实现的目标。
user
控制器中处理登录,然后根据用户组相应地控制访问。
甚至只是给user
一个role
,然后再次根据角色控制访问权限。
食谱提供了一个类似的例子