這作業得很好
return Webinar::query()
->withCount('users')->orderByDesc('users_count')
->get();
但我需要使用條件進行排序,但這不起作用
return Webinar::query()
->where(function($query) use ($sort_by) {
if($sort_by == 0) {
return $query->withCount('users')->orderByDesc('users_count');
} else {
return $query->withCount('review')->orderByDesc('review_count');
}
})
->get();
我還嘗試了這樣的條件來檢查我的 if else 功能
return Webinar::query()
->where(function($query) use ($sort_by) {
if($sort_by == 0) {
return $query->withCount('users')->orderByDesc('users_count')
->where('status', 2);
} else {
return $query->withCount('review')->orderByDesc('review_count')
->where('status', 1);
}
})
->get();
但 where 狀態僅適用于無效。希望有人能解答,萬分感謝
uj5u.com熱心網友回復:
你把condition代碼移到外面怎么樣query
但我需要使用條件進行排序,但這不起作用
if ($sort_by === 0) {
$order = 'users_count';
$count = 'users';
} else {
$order = 'review_count';
$count = 'review';
}
return Webinar::query()
->withCount('users')->orderByDesc($order)
->get();
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/411074.html
標籤:
上一篇:查找觸發事件的模型方法
