Laravel 5.1使用限制在()方法中的雄辩

Sag*_*ara 3 limit laravel eloquent laravel-5.1

雄辩

$staffGroup = StaffGroup::where('id', $id)
            ->with('staffGroupRight')
            ->first();
Run Code Online (Sandbox Code Playgroud)

StaffGroup Model:

public function staffGroupRight() {
    return $this->hasMany('Modules\Staff\Http\Models\StaffGroupRight');
}
Run Code Online (Sandbox Code Playgroud)

我所做的是,

public function staffGroupRight() {
    return $this->hasMany('Modules\Staff\Http\Models\StaffGroupRight')->take(5);
}
Run Code Online (Sandbox Code Playgroud)

但它总共给出了5行,staff_group但我希望它能limit用于一个staff_group

例如

有10 staff_group则给出了5条的staffgrouprights为10 staff_group,但我想它5单staff_group

这里staffGroupRight返回data适当idstaff group.

但我想limit在那个with()方法数据中设置.

是否有可能limitwith()方法中设置......?

小智 6

$staffGroup = StaffGroup::where('id', $id)
        ->with(['staffGroupRight' => function($query){
            return $query->take(10);
            }])
        ->first();
Run Code Online (Sandbox Code Playgroud)

我假设您想拍摄10名staffGroupRight的记录.

  • 谢谢,但是它需要(10)作为全部,但我希望它按照员工组正确...我的意思是有多个员工组,然后对于总员工组它返回10,但我希望它按照员工组,这意味着对于每个员工组我想要 10 名员工组权利 (2认同)