Сортировка msfilter2 по msOption

Проблема с сортировкой msfilter2 по msOption
Делаю вот так:
{$_modx->runSnippet('!mFilter2@PropertySet',[
        'class'=> 'msProduct',
        'element' => 'msProducts',
    'leftJoin' => json_encode([
    'flat_area' => [
    'class' => 'msProductOption',
    'on' => '`flat_area`.`key` = \'flat_area\' AND `flat_area`.`product_id` = `msProduct`.`id`'
    ]
    ]),
        'sortAliases' => '{"flat_area":"flat_area"}',
        'aliases' => 'msoption|flat_area==flat_area',
          'sort' => 'flat_area:asc',
        'returnIds'=> 1,
        'limit'=> 0,
        'filters'=> 'resource|parent:categories, msoption|rooms:room, ms|price:number, msoption|flat_area:number',
        'parents' => 2,
        'aliases' => 'msoption|rooms==rooms, ms|price==price, msoption|flat_area==flat_area',
        'tplOuter' => '@FILE chunks/msfilter2/search.outer.tpl',
        'tplFilter.outer.resource|parent' => '@FILE chunks/msfilter2/custom.select.tpl',
        'tplFilter.row.resource|parent'=>'@FILE chunks/msfilter2/custom.select.option.tpl',
        'tplFilter.outer.rooms' => '@FILE chunks/msfilter2/checkbox.outer.tpl',
        'tplFilter.row.rooms'=>'@FILE chunks/msfilter2/checkbox.tpl',
        'tplFilter.outer.price'=>'@FILE chunks/msfilter2/number.outer.tpl',
        'optionFilters'=>'{"flat_status:=":"Квартира свободна"}',

        'tplFilter.row.price'=>'@FILE chunks/msfilter2/number.tpl',
        'tplFilter.outer.flat_area'=>'@FILE chunks/msfilter2/number.outer.tpl',
        'tplFilter.row.flat_area'=>'@FILE chunks/msfilter2/number.tpl',
        'suggestions' => 0,
    ])}

Получаю ошибку:
[2025-09-18 10:44:51] (ERROR @ /var/www/u1005036/data/www/szalliance.ru/core/components/pdotools/model/pdotools/pdofetch.class.php: 178) [pdoTools] Error 42S22: Unknown column 'flat_area' in 'order clause'
[2025-09-18 10:44:53] (ERROR @ /var/www/u1005036/data/www/szalliance.ru/core/components/pdotools/model/pdotools/pdofetch.class.php: 178) [pdoTools] Error 42S22: Unknown column 'flat_area' in 'order clause'
Алексей Сунарчин
4 часа назад
modx.pro
36
0

Комментарии: 1

Николай Савин
4 часа назад
0
Ну логично. Скрипт делает выборку по таблице modResource, и там такого поля нет. Оно лежит в другой таблице msProductOption.
Попробуй писать msProductOption.flat_area вместо простого flat_area
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1