在Laravel 5.4中使用GlobalScope的错误

时间:2017-09-25 08:47:12

标签: php laravel global-scope

当我尝试在我的模型中使用全局范围时:

    protected static function boot()
{
    parent::boot();
    static::addGlobalScope(new PostScope(Post::TYPE_VIDEO));
    static::addGlobalScope('video', function (Builder $builder) {
        $builder->join('video_posts', 'post_id', '=', 'id');
    });
}

它不起作用,因为某处Laravel处理双重调用函数join()。 有人遇到过吗?如何解决?

1 个答案:

答案 0 :(得分:0)

如果你有一个课程'视频'我建议使用hasMany / belongsTo在你的两个类之间添加一个Eloquent关系,然后使用

抓住它
static::addGlobalScope('video', function ($builder) {
    $builder->with('video');
});