Подтвердить что ты не робот

Laravel eloquent lists - Сортировка списка значений столбцов

Использование laravel, и я создаю поле выбора в форме. Я использую помощника для создания окна выбора, и все работает нормально.

Я извлекаю данные для окна выбора из базы данных и использую следующее для извлечения данных:

$data = model::lists('name','id')

Снова все работает нормально, и это возвращает ожидаемый массив

Моя проблема, хотя я не могу сортировать этот список - я попытался добавить orderBy(), но без радости.

Кроме использования встроенной функции php существует ли метод laravel для сортировки списка?

4b9b3361

Ответ 1

Вы можете поместить все, что хотите, а затем перечислите его. Я имею в виду:

model::orderBy('orderByColumn')->lists('name', 'id');

Пока lists - последний метод в цепочке, другие методы работают отлично.


Начиная с Laravel версии 5.3 lists будет устаревшим, вместо этого используйте pluck:

model::orderBy('orderByColumn')->pluck('name', 'id');

Ответ 2

Вы можете попробовать:

$data = model::select('name','id')->orderBy('name');

Если это не работает, введите ->get() в конец:

$data = model::select('name','id')->orderBy('name')->get();