Мне нужно отсортировать строку как число. Для этого использую:
select * from `panel` order by cast(town as unsigned) asc LIMIT 20
Как написать это в $dataProvider? с учетом что может прийти asc или desc, т.е какое-то правило нужно куда-то ввести.
Стандартно есть только такая сортировка:
'town' => [
'asc' => ['town' => SORT_ASC],
'desc' => ['town' => SORT_DESC]
],
В общем мне нужно как то написать правило чтоб если там где 'asc' => 'строка' то эта строка и становилась бы Expression'ом для этой команды, например
'town' => [
'asc' => 'cast(town as unsigned) asc',
'desc' => 'cast(town as unsigned) desc
],
Как это написать?