嗨,我试图抓住蛋糕(被扔到最深处,没有太多帮助,教程似乎有点稀缺)
我的问题是我们有三种不同类型的用户——企业、企业用户、个人,我们为每三个用户创建了一个表、模型和控制器。是否可以在使用三种类型的控制器时创建一个登录页面,还是我们需要将所有内容组合到一个控制器中并从那里开始?
对于这样一个初学者的问题,我很抱歉,但在这一点上,我有点绝望。
业务 - 顺便说一句,有很多业务用户
听起来你的模型需要一些调整。我建议以下架构:
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
a role
,然后再次根据角色控制访问。
食谱提供了一个类似的例子