使用 laravel,我正在表单上创建一个选择框。我一直在使用助手创建选择框,一切正常。
我从数据库中检索选择框的数据并使用以下内容检索数据:
$data = model::lists('name','id')
再次一切正常,这将返回预期的数组
但我的问题是我似乎无法对这个列表进行排序——我尝试添加 orderBy() 但没有任何乐趣。
除了使用原生 php 函数之外,还有 laravel 方法对列表进行排序吗?
你可以放任何你想要的,然后列出来。我是说:
model::orderBy('orderByColumn')->lists('name', 'id');
只要lists
是链中的最后一个方法,其他方法就可以了。
从 Laravel 5.3 版 lists
开始将被弃用,请pluck
改用:
model::orderBy('orderByColumn')->pluck('name', 'id');
你可以试试:
$data = model::select('name','id')->orderBy('name');
如果这不起作用,->get()
请在最后扔一个:
$data = model::select('name','id')->orderBy('name')->get();
当我
dd(YourModel::pluck('name', 'id'));
我看到它是 Collection Class 所以我找到了 collection laravel 然后我找到了方法 sortKeys() 所以我这样做了:
YourModel::pluck('name', 'id')->sortKeys();