Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 10月CMS:如何使用角色范围扩展后端用户_Php_Content Management System_Backend_Octobercms - Fatal编程技术网

Php 10月CMS:如何使用角色范围扩展后端用户

Php 10月CMS:如何使用角色范围扩展后端用户,php,content-management-system,backend,octobercms,Php,Content Management System,Backend,Octobercms,我已经能够扩展Backend\Models\User类,并添加一个作用域查询方法,以仅检索超级用户: public function boot() { User::extend(function($model) { $model->addDynamicMethod('scopeIsSuperUser', function($query) { return $query->where('is_superuser', 1);

我已经能够扩展
Backend\Models\User
类,并添加一个作用域查询方法,以仅检索超级用户:

public function boot()
{
    User::extend(function($model) {
        $model->addDynamicMethod('scopeIsSuperUser', function($query) {
            return $query->where('is_superuser', 1);
        });
    });
}
如何为特定组中的用户提供范围方法?就像我只想要角色为“
BookManager
”的用户一样。是否可以使用
Backend\Models\User
类上已定义的
$groups
关系

public $belongsToMany = [
    'groups' => ['Backend\Models\UserGroup', 'table' => 'backend_users_groups']
];
这应该可以

User::extend(function($model) {
    $model->addDynamicMethod('scopeIsBookManager', function($query) {
        return $query->whereHas('groups', function ($query) {
            $query->where('code', 'BookManager');
        });
    });
});