如何在 Laravel 中使用 Eloquent 对 NULL 值进行排序
2022-08-30 11:56:49
我的员工和小组表之间有很多很多关系。我已经创建了数据透视表,并且一切都在正常工作。但是,我在员工表上有一个 sortOrder 列,我用它来确定它们的显示顺序。排序顺序列中值为 1 的员工应为第一个,值为 2 应为第二个,依此类推。(如果按降序排序,则向后排序)sortOrder 列是允许空值的整数列。
我已经设置了我的组模型,以按排序列对员工进行排序,但我遇到了一个问题。空值始终首先显示。我尝试过使用ISNULL和类似的SQL方法来代替使用的常规“asc”或“desc”,但我只得到一个错误。
以下是我的组模型中的代码:
class Group extends Eloquent {
public function employees()
{
return $this->belongsToMany("Employee")->orderBy('sortOrder', 'asc');
}
}
以下是我在控制器中用于访问模型的内容:
$board = Group::find(6)->employees;
在Laravel中,最后对NULL值进行排序的诀窍是什么?