Почему я не работаю над красноречивым запросом (laravel 5.3)?

Мой код хранилища выглядит так:

public function getStatusList()
{
$query = UsersBank::where('user_id', '=', auth()->user()->id)
->where('status', '=', 1)
->count();
dd($query);
}

Результат dd ($ query) = 1, это правда

Но я пробую себя так:

public function getStatusList()
{
$query = self::where('user_id', '=', auth()->user()->id)
->where('status', '=', 1)
->count();
dd($query);
}

Результат dd ($ query) = 4, неверно

Почему при использовании self результат не верный?

0

Решение

self работает только для статических классов / свойств, я полагаю, что у вас нет. Вместо этого используйте $ this.

Как это

$query = $this->where('user_id', '=', auth()->user()->id)
->where('status', '=', 1)
->count();
2

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

Прочитайте руководство:
http://php.net/manual/en/language.functions.php

Если вы используете статический метод, вы можете использовать только self :: staticMethod (); или пространство имен.

Если вы используете нестатический метод, вы можете использовать $ this-> method ();

0

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