Ошибка с GlobalScope в Laravel 5.4

Когда я пытаюсь использовать глобальную область видимости в моей модели:

    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(),
Кто-нибудь сталкивался с этим? Как это исправить?

0

Решение

Если у вас есть класс ‘video’, я бы порекомендовал добавить отношение Eloquent между вашими двумя классами, используя hasMany / ownTo, и просто взять его, используя

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

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]