@Dimitri_Titov

Как сделать правильную сортировку в Sonata?

Как произвести сортировку в sonata admin bundle в list field?
Дело в том, что поле содержит числа, но из базы достаёт как строки. Соответственно они сортируются как строка
92 > 30000
Как можно исправить? Не хочется всю базу менять просто
  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
RNSNS
@RNSNS
Symfony Backend developer
Вам нужно перевести значение в число
Либо через геттер:
public function getPrice(): int
{
    return $this->price;
}

Либо в самой сонате:
protected function configureListFields(ListMapper $list): void
{
    $list
        ->add('price', null,[
            'sort_field_mapping' => [
                'fieldName' => 'price+0',
            ],
        ])
    ;
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
24 апр. 2024, в 20:24
10000 руб./за проект
24 апр. 2024, в 19:51
1000 руб./за проект