【问题标题】:Sentry 2 - Create Group Permissions - Laravel PackageSentry 2 - 创建组权限 - Laravel 包
【发布时间】:2014-06-25 15:03:10
【问题描述】:

我曾尝试在 Cartalyst 网站上查找一些文档,但在任何地方都找不到。所以,我的问题是......如果我在创建视图上有一个组列表,比如管理员、版主和用户。然后我将如何自动化这些组的权限?

所以我希望管理员创建:1,删除:1 等。版主可以创建,但不能删除,用户无法执行任何操作。

在我创建时,我会有一个下拉列表,您可以在其中将这些组分配给已注册的用户,这将自动为该用户创建权限。

有人能给我简要介绍一下最简单的方法吗?我希望 Sentry 上的某种功能会有所帮助,但是随着 Sentry 被从网站上删除,我似乎无法找到文档。

【问题讨论】:

    标签: php laravel cartalyst-sentry


    【解决方案1】:

    首先,您需要像您提到的那样创建三个组(管理员、版主和用户) - 这是管理员组的示例。

    $group = Sentry::createGroup(array(
        'name'        => 'Admin',
        'permissions' => array(
            'admin' => 1,
            'create' => 1,
            'delete' => 1
        ),
    ));
    

    对于其他组,您可以在permissions 数组中进行更改。您可以通过 -

    获得组权限
    $groupPermissions = $group->getPermissions();
    

    你去!

    要将用户分配到特定组,您可以像下面这样添加。

    $adminGroup = Sentry::findGroupById(1);    
    $user->addGroup($adminGroup);
    

    您需要做的就是选择任何(创建的)组,并在用户创建时分配下拉列表。或者,您可以简单地将用户分配到默认组。

    无论如何,您可以在供应商内部的 Cartalyst/Sentry 包中找到 Sentry 文档。

    【讨论】:

    • 完美,非常感谢您的回答。 +1 提到文档在包供应商内部。一直认为它是硬编码到网站中的。 :)
    • @CheckeredMichael 很高兴它帮助了你:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-28
    • 2017-09-21
    • 1970-01-01
    • 2013-01-15
    • 2014-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多