【问题标题】:Multiple user types in Laravel 4Laravel 4 中的多种用户类型
【发布时间】:2013-07-06 01:43:47
【问题描述】:

我正在构建一个 B2B2C 系统(即我们的系统为其他企业提供服务客户的功能)。

例如,车库。我们的系统将处理多个车库,每个车库都有自己的客户,等等。

您可以想象,系统有三种不同类型的用户:

  1. 我们(即我们的管理/销售人员)
  2. 我们的客户(即企业)
  3. 他们的客户(即最终用户)

当前的身份验证系统(据我所知)假设一种用户类型,而我们有三种完全不同的独立类型,它们存储在各自的数据库中。而且将它们组合成单一类型是没有意义的,因为数据类型及其权限等将完全不同。

基本上,我需要了解如何通过专用入口页面对每种类型进行身份验证和登录?

可以延伸到让它们以多态关系扩展某种用户表,但如果可能的话,我宁愿避免这样做,因为这似乎是一场令人头疼和等待发生的灾难。

干杯

【问题讨论】:

  • 非常有趣的问题。我没有答案,但我想只要每种类型的用户都实现Illuminate\Auth\UserInterface,大部分功能都会起作用。但可能默认的 Auth 外观需要一些修改才能实现。

标签: php authentication laravel laravel-4


【解决方案1】:

您可以更改您的身份验证过滤器并相应地设置会话/路由。

例子:

Route::group(array('prefix' => 'admin', 'before' => 'authAdmin'), function() {
  // admin routes
  Route::controller('foo', 'AdminFooController'); // handles /admin/foo/*
});

Route::group(array('prefix' => 'business', 'before' => 'authBusiness'), function() {
  // businesses routes
  Route::controller('foo', 'BusinessFooController'); // handles /business/foo/*
});

Route::group(array('before' => 'authEU'), function() {
  // end user routes
  Route::controller('foo', 'FooController'); // handles /foo/*
});

// Other "non required authentication" routes

【讨论】:

    猜你喜欢
    • 2023-04-04
    • 1970-01-01
    • 2015-05-31
    • 1970-01-01
    • 2018-09-17
    • 2021-01-22
    • 2017-12-16
    • 2014-12-09
    • 1970-01-01
    相关资源
    最近更新 更多