Область видимости Laravel - PullRequest
0 голосов
/ 17 мая 2018

У меня есть контроллер, где у меня есть следующий код:

public function index()
{
    $posts = Post::orderByDesc('id')->paginate(15);
    return view('home', compact('posts'));
}

Это возвращает все сообщения на странице. На странице у меня есть вкладки: all posts, posts by time, posts by rating.

В модели у меня есть такой объем:

public function scopeOfType($query, $type)
{
    return $query->where('type', $status);
}

Как я могу назвать это на странице, где у меня есть вкладки?

Когда я пытаюсь вызвать область с:

@forelse($posts->ofType($type) as $post)

Я получаю сообщение об ошибке:

Method Illuminate\Database\Eloquent\Collection::ofType does not exist. (View: 

Как я могу это исправить?

1 Ответ

0 голосов
/ 17 мая 2018

Если вы хотите выполнить цикл по типу, как вы указали, вы уже можете использовать, где в коллекции:

@forelse($posts->where('type', $type) as $post)

Обратите внимание, что это коллекция, и она фильтрует ее по типу, который вы указали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...