JellyBool

17773 经验值

你的 package 是哪个?你设置了 github 的同步没?

这是一个 permissions 的 collection 结果集吧,你直接 pluck('display_name') 应该就可以了

额,没太清楚你的需求:

 $user = Auth::user();
 $permissions = $user->with('roles.permissions')->get();

这种么?

对,逻辑上就是这样的。先有 B,再有 A。

通常情况下,users 和 roles 是一个多对多的关系吧。你需要在 Role 这里也声明 users 这个关系

 public function users()
    {
        return $this->belongsToMany(User::class)->withTimestamps();
    }

之后通过 $role->users->pluck('id') 获取所有的 id 值。

如果是 roles 的 id 的话,直接 $role->pluck('id')

嗯哼,我以为是 laravel 5.3 的新版有了新的注入规则。所以还是贴上代码和报错信息快。

恩,目前来说是需要第三张关联表的,你只需要填入两个关联表的 id 字段的值就可以了。比如 post_id 和 tag_id

建议可以参照下面这样修改一下你的实现方法:

$app->configureMonologUsing(function($monolog) use ($app) { });// 这样是不需要 global $app 这种语法的

第二,也可以这样:

(new Monolog\Handler\StreamHandler(storage_path('/laravel_error.log'), Monolog\Logger::ERROR))
            ->setFormatter(new Monolog\Formatter\LineFormatter(null, null, true, true)),

也是不需要 global $app 这样的语法

其实这些关联关系就是根据一个字段来进行关联的,比如:

$user->hasMany(Post::class);

这个时候其实就是在 posts 这张表,使用 user_id 进行关联,你在使用 factory 的时候,填充 user_id 这个字段就好了。