Неверный порядок сортировки объектов

Я пытаюсь выяснить, что не так с порядком сортировки для SQL-запроса xPDO,

Этот запрос

$criteria = $this->modx->newQuery($table);
$criteria->sortby($sortby,$sortdir);
$options = $this->modx->getCollectionGraph($table,$criteria);
$criteria->prepare();
echo '<pre>'.$criteria->toSQL().'</pre>';

результаты в этом SQL ~, который является правильным:

SELECT `Location`.`id` AS `Location_id`, `Location`.`created` AS `Location_created`,
 `Location`.`modified` AS `Location_modified`, `Location`.`location` AS 
`Location_location`, `Location`.`group` AS `Location_group`, `Location`.`comment` 
AS `Location_comment` 
FROM `flow_location` AS `Location` ORDER BY location asc

однако, если я попытаюсь перебрать запрос:

foreach($options as $option) {
    echo $option->get($value).'<br>';
}

он будет отображать записи по идентификатору заказа в базе данных!?

как мне это исправить?

1 ответ

Вы заказываете по location asc, но location не определен в вашем запросе. Вы переименовываете колонку location в Location_locationтак что вы должны заказать по Location_location asc,

SELECT `Location`.`id` AS `Location_id`, `Location`.`created` AS `Location_created`,
 `Location`.`modified` AS `Location_modified`, `Location`.`location` AS 
`Location_location`, `Location`.`group` AS `Location_group`, `Location`.`comment` 
AS `Location_comment` 
FROM `flow_location` AS `Location` ORDER BY location asc
Другие вопросы по тегам