【问题标题】:Relationship between Users, Employees and Admins in LaravelLaravel 中用户、员工和管理员之间的关系
【发布时间】:2021-07-31 20:19:45
【问题描述】:

所以,我对 Laravel 还很陌生,无法找出建立这种关系的最佳方式。我创建了一个餐厅管理系统,并成功创建了具有某些角色的登录系统。用户可以拥有四种角色:Admin、Water、Cashier 和 General。

管理员可以访问大部分系统,服务员和收银员的某些部分和“一般”用户只能访问时间表模块。这可行,但我希望管理员能够查看其员工。

问题是我希望管理员能够在不需要系统上的用户帐户的情况下创建员工,但我还希望每个用户帐户自动成为管理员(管理员角色)或员工(服务员,收银员和一般)。

所以基本上每个用户都是员工或管理员,但每个员工都不必是用户。然后我想将我的时间表模块连接到员工模块,而不是用户模块。

如果我以非常复杂的方式执行此操作,而您知道的更好,请告诉我。或者以其他方式发布解决方案:-)

【问题讨论】:

    标签: sql laravel relationship


    【解决方案1】:

    嗨角色可以通过两种不同的方式应用。角色可以是一种身份验证方法,也可以是一种员工。

    这完全取决于您计划对员工做什么。我相信你需要先解决这个问题。由于角色主要是定义对应用程序的访问,因为它们与能力/权限有关系。

    将您的时间表与员工联系起来是正确的步骤。由于员工并不总是需要登录。但它需要是可计划的。

    因此,时间表将是带有 timeable_id 的 timeable_type。我将执行以下操作,我将创建一个包含以下类型的 EmployeeType::class:Weighter、Cashier、General。我将使用以下时间表。

    employee_id 因为时间表属于员工 和employee_type_id,因为您希望能够区分员工的类型。 你甚至可以做一个可变形的关系来获得更大的灵活性

    所以 User::class 具有能力(权限)并且是您应用中的活跃用户。 Employee::class 没有能力,但在您的应用程序中是一个管理值。所以员工基本上只有在拥有 User::class 时才能登录

    因此,员工属于用户,因此员工与用户具有归属关系。 并且用户与员工有一个关系

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-16
      • 2021-06-15
      • 2017-10-12
      • 1970-01-01
      • 1970-01-01
      • 2016-08-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多