因此,我正在使用具有用户模型的该应用程序工作,并且用户具有不同的角色,例如编辑,管理员,主管,读者...等,我们还有另一个模型,我们称它为有一个外键引用管理员,也有另一个外键引用读者。在这种情况下,管理员和读者都是用户,但他们具有不同的角色,在我的Article模型中应如何引用它们?我应该放这样的东西吗?
user_admin_id
user_reader_id
或者有更好的方法吗?
答案 0 :(得分:1)
如果您应该为用户和管理员使用相同的模型,则可以使用Eloquent Relations(https://laravel.com/docs/5.8/eloquent-relationships)轻松在表之间创建关系
您应该有一个roles
表和一个user_roles
表,在其中保存用户拥有的所有角色。这样,您可以使用中间件来检查用户是否具有管理员角色,之后您可以为他提供更多特权。
您不必使用两列链接到users
表,因为这在数据库设计中是一种不好的做法。