Laravel:在多对多关系表上的集合上的wherePivot或where子句不起作用?

时间:2018-12-18 11:59:14

标签: laravel-5 eloquent relationship

我在角色和权限表之间有很多关系。我试图获取所有角色和权限,其中ivot.is_deleted =0。但是where子句似乎不起作用。我在做什么错了?

这是我尝试的榜样:

public function permissions()
    {
        return $this->belongsToMany(Permission::class,'permission_role','role_id','permission_id')->wherePivot('is_deleted', '=', 0);
    }

我在权限模型中做了同样的事情。

这是我在控制器中尝试过的:

$roles = Role::all();
dd($roles); //gives all data without filtering.

$roles= Role::where('is_deleted',0)->whereHas('permissions', function($query){
    $query->where('permissions.pivot.is_deleted', 0);
})->get();

0 个答案:

没有答案