我有两个表,一个是用户,另一个是角色表。我想检查登录用户的角色状态是否为活动状态,以及我是否尝试过的用户状态为活动状态
$user = User::whereHase('get_role', function($query){$query->where('status', 1);})
where("email","=",$request->{$this->username()})
->where('password',"=",\Hash::make($request->password))->first();
但是那行不通,请帮助我。 预先感谢。
答案 0 :(得分:3)
如果复制并粘贴此代码,则您至少有一个拼写错误
$user = User::whereHase('
将whereHase更改为wherehas,请仔细检查拼写,然后重试?
答案 1 :(得分:1)
我终于找到了解决方法
$ credentials = $ this-> credentials($ request);
$ login = $ credentials [$ this-> username()];
\ App \ Models \ User :: select(“ users.id”)-> Join(“ roles”,“ roles.id”,“ =”,“ users.role_id”)-> where(“ users。状态”,1)-> where(“ roles.status”,1)-> where($ this-> username(),$ login)-> first()
答案 2 :(得分:0)
您应该尝试以下操作:
$user = User::whereHas('get_role', function($query){$query->where('status', 1);})
->where("email","=",$request->{$this->username()})
->where('password',"=",\Hash::make($request->password))->first();