За последние 24 часа нас посетили 20855 программистов и 1014 роботов. Сейчас ищут 456 программистов ...

Сортировка данных в Laravel Admin

Тема в разделе "Laravel", создана пользователем Nono, 15 апр 2019.

  1. Nono

    Nono Новичок

    С нами с:
    2 дек 2016
    Сообщения:
    4
    Симпатии:
    0
    Добрый вечер. Первый раз имею дело с laravel. Нужно решить простую задачу, но пока не выходит. Есть таблица с данными, нужно чтоб при выводе была нисходящая сортировка по ID. Перепробовал разные вариации с sortby() sortable(), но ничего не сработало. Подскажите пожалуйста строку, что нужно вписать. Я реально не понимаю, что к чему. Собственно участок кода на вывод таблицы:

    PHP:
    1. protected function grid()
    2.     {
    3.         $grid = new AppGrid(new Order);
    4.         $user = Admin::user();
    5.  
    6.         if (!$user->inRoles(['administrator','dispetcher'])) {
    7.             $grid->model()->where('manager_id', $user->id);
    8.         }
    9.  
    10.         if (!$user->isRole('administrator') && !$user->can('orders.delete')) {
    11.             $grid->tools(function ($tools) {
    12.                 $tools->batch(function ($batch) {
    13.                     $batch->disableDelete();
    14.                 });
    15.             });
    16.             $grid->actions(function ($actions) {
    17.                 $actions->disableDelete();
    18.             });
    19.         }
    20.      
    21.         $grid->id('ID')->sortable();
    22. $grid->created_at('Дата добавления')->display(function ($dts) {
    23.             return (new Carbon($dts))->format('d.m.Y H:i:s');
    24.         });
    Поправил маленько разметку
    — МодераторЪ
     
    #1 Nono, 15 апр 2019
    Последнее редактирование модератором: 16 апр 2019
  2. acho

    acho Активный пользователь

    С нами с:
    28 дек 2016
    Сообщения:
    854
    Симпатии:
    210
    Адрес:
    Санкт-Петербург
  3. Nono

    Nono Новичок

    С нами с:
    2 дек 2016
    Сообщения:
    4
    Симпатии:
    0
  4. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.072
    Симпатии:
    1.237
    Адрес:
    там-сям
    @Nono оформляй код в [code][/code] или [php][/php]
    (это я здесь выделил скобки жирным чтобы форум их не превратил в настоящую разметку. тебе не надо копи-пастить это буквально. просто пиши буквы руками :) )

    --- Добавлено ---

    Имя поля "ID" точно в верхнем регистре? (похоже на вордпрессовскую кривую практику)

    Я не знаком с классом AppGrid, поэтому стреляю наугад: вижу в коде что-то похожее на модель eloquent:
    PHP:
    1. $grid->model()->where('manager_id', $user->id);
    Если в данном контексте допустимо что-то делать с моделью, то можно попробовать
    PHP:
    1. $grid->model()->orderBy('ID', 'desc')
     
  5. Nono

    Nono Новичок

    С нами с:
    2 дек 2016
    Сообщения:
    4
    Симпатии:
    0
    Да, id в верхнем регистре)
    Спасибо, пытался не в том месте начать сортировку, сейчас все получилось