Laravel foreach сортировать, сначала показывать конкретные записи - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть цикл foreach, и я хочу отсортировать список, показывая записи, где сначала is_active равен null, а затем все остальное после.

    @foreach ($registrations->sortBy('is_active') as $registration)

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 16 ноября 2018

Вы можете попробовать таким образом,

 // specify second_column that will be used if multiple null values found

 $registrations = $registrations->sortByDesc('second_column')->sortBy('is_active');

 @foreach ($registrations->all() as $registration)
0 голосов
/ 16 ноября 2018

прежде всего создайте запрос, который возвращает записи в порядке возрастания в соответствии со значением is_active (я предполагаю, что 0 для неактивного и 1 для активного )

Запросдолжно быть:

$records=DB::table('table_name')->orderBy('is_active','asc')->all();
return view('viewblade')->with('records',$records);

теперь вы можете отображать данные в окне просмотра как:

@foreach($records as $record){
   {{$record->fieldName}}
}
@endforeach
...