@Dimitri_Titov

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

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

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

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

Войти через центр авторизации
Похожие вопросы