webhamster
@webhamster

Yii 1.x: Почему не работает сортировка в CActiveRecord?

Пытаюсь получить данные из модели, отсортировав их по полю sort_order. Код такой:
// Данные меню
$menu = Menu::model()->findAll('', array('order'=>'sort_order') );


Однако данные возвращаются без сортировки. Когда перебираю результат:

foreach($menu as $item)
  echo $item['text'];


То вижу, что данные получены так, как они расположены в базе, без сортировки по полю sort_order.

Что не так?

Пользуюсь документацией здесь: www.yiiframework.com/doc/api/1.1/CActiveRecord#fin...
  • Вопрос задан
  • 2290 просмотров
Пригласить эксперта
Ответы на вопрос 3
bezrukovPS
@bezrukovPS
Ведущий программист 1С-Битрикс
Насколько я помню, надо так:
$menu = Menu::model()->findAll(array('order'=>'sort_order'));
Ответ написан
Комментировать
kawabanga
@kawabanga
Попробуйте через CDBcriteria, через него код проще потом понимать будет:

$criteria = new CDbCriteria;
$criteria->order = 'sort_order DESC';

$model = findAll($criteria);
Ответ написан
Комментировать
три дня назад возник вопрос, как привязать к AR orderby. Вбил в гугл https://www.google.com/search?q=yii+findall+orderb...
по первой же ссылке правильный пример. Что мешает вам так сделать? уйдет около 15ти секунд.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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