Есть много способов решить проблему с сортировкой, но, поскольку вы настроили страницу, позвольте мне рассказать, как вы можете сортировать записи.Создайте еще одно действие, которое указывает на ваш settings.photos
маршрут
public function settings_photos($property_id) {
$form = Input::get('submit');
$orderBy = $form == "Ascending" ? "asc" : "desc";
# Fetch Images in of Specific Property
$list_of_images = Image::where('property_id', $property_id)
# Order by Asc/Desc
->sortBy('id', $orderBy)->get();
return view('settings.photos', ['image_array' => $list_of_images]); }
Теперь добавьте Image->id
, чтобы передать действие вашего контроллера формой
/11180761/laravel-rasstanovka-zapisei-v-poryadke-vozrastaniya-i-ubyvaniya
<form name="asc" action="{{route("settings.photos")}}" method="post" class="text-center">
@csrf
<input type="image_id" value="{{$id}}" />
<input type="submit" value="Ascending " class="settings-photos-header2 text-center"/> |
</form>
<form name="dec" action="{{route("settings.photos")}}" method="post" class="text-center">
@csrf
<input type="image_id" value="{{$id}}" />
<input type="submit" value="Descending" class="settings-photos-header2 text-center"/>
</form>
Теперь внесите некоторые изменения в свой предыдущий код контроллера
public function create()
{
$image = PropertyUser::where('user_id', '=', Auth::user()->id)->get();
foreach($image as $property)
{
$id = $property->property_id;
}
$image_main = Image::where('property_id', $id)->get();
return view('settings.photos', ['image_array' => $image_main, 'id' => $id]);
}
Как я уже говорил, существуют различные способы сортировки записей даже с помощью Ajaxно я предлагаю вам использовать ваш пример кода.Я также не оптимизировал код.
Дайте мне знать, если у вас есть какие-либо вопросы.Спасибо