我有:
'cards'表 -ID -名称
“卡片类别”表
“类别”表
我要加载卡,然后急于加载关系,我想做的就是这样做:
Card :: with('ctrCategories.category').......;
我希望所有从类别中加载的类别都将按索引仅分类。
我花了整天的时间做所有事情,但没有解决办法:
我尝试过:
$ card = Card :: findOrFail($ id); 返回$ card-> with('cardCategories')
->with('ctrCategories.category')
->with('ctrCategories.arguments')
->orderBy('ctrCategories.category.index')->get();
我也尝试过这种方法:
$data = $this->card
->with([
'roles' => function ($q) {
$q->with(['tabs' => function ($q) {
$q->with(['department' => function ($q) {
$q->with(['panel' => function ($q) {
$q->orderBy('position', 'asc');
}])->orderBy('position', 'asc');
}])->orderBy('position', 'asc');
}])->orderBy('position', 'asc');
}
])
-> findOrFail($ id);
===== EDIT =====
我编写了SQL查询,并得到了想要的结果现在,我想将其转换为Laravel Eloquent或DB查询:
选择cards
。id
,
cards
。name
,categories
。name
,categories
。id
,categories
。index
来自cards
card_categories
上的内部联接cards
。id
= card_categories
。card_id
categories
上的内部联接categories
。id
= card_categories
。category_id
其中cards
。id
= 120
AND cards
。support_id
= categories
。support_id
按categories
排序。index
asc
有什么帮助吗?经过几个小时的测试我无法弄清楚