I have an application where a User can be a Supplier or a Shop.
Now these 2 roles have very different role-specific fields..
基本上,商店可以向供应商订购..因此商店可以订购订单,供应商将收到这些订单.
我会把这些领域放在哪里进行良好练习?
>在User类中添加所有类型,可以为nullable类型(看起来不对!)
>为每个角色创建一个不同的类.所以我们有一个带有user_id的Supplier类和带有user_id的Shop类,我必须使用$user-> supplier->字段或$user-> shop->字段查询这些字段…
这些似乎都没有.有任何想法吗?
谢谢!
解决方法:
您不必坚持使用单个用户表.您可以拥有供应商模型和商店模型(包含供应商和商店表).
然后在config / auth.php文件中,您可以使用Eloquent驱动程序但使用不同的模型设置新的身份验证提供程序.然后,您可以将这些提供程序分配给您创建的任何新防护.
您可以在此处详细了解身份验证和授权:
https://laravel.com/docs/5.4/authentication
https://laravel.com/docs/5.4/authorization
编辑
在关于多态关系的评论中提到它之后,我认为这将更适用于这种类型的关系(多种类型的用户,每种用户都有自己的字段集).
在这里阅读更多:
https://laravel.com/docs/5.4/eloquent-relationships#polymorphic-relations
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。