我的存储库代码是这样的:
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 :(得分:2)
self仅适用于静态类/属性我认为你的不是。请改用$ this。
喜欢这个
$query = $this->where('user_id', '=', auth()->user()->id)
->where('status', '=', 1)
->count();
答案 1 :(得分:0)
阅读手册: http://php.net/manual/en/language.functions.php
如果使用静态方法,则只能使用self :: staticMethod();或命名空间。
如果您使用非静态方法,则可以使用$ this-> method();