Задать вопрос
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 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 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ти секунд.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы