Yii: Множественный порядок по условиям

Я использую CActiveDataprovider для отображения данных из разных таблиц. Теперь у меня проблема. У меня есть две таблицы (элементы и категории), и у них обоих есть столбцы priority_order, и мне нужно показать данные по порядку обоими столбцами.

Например: есть две категории и шесть элементов, относящихся к этим категориям:

  • Еда (priority_order 1)
    1. food_item1 (priority_order 1)
    2. fodd_item2 (priority_order 2)
    3. fodd_item3 (priority_order 3)
  • Напиток (priority_order 2)
    1. drink_item1 (priority_order 1)
    2. drink_item2 (priority_order 2)
    3. drink_item3 (priority_order 3)

Теперь мне нужно показать данные в CGridView точно так же, как в приведенном выше порядке. Все продукты будут на первом месте и будут отсортированы по их приоритету, а товары для питья придут позже; очевидно, в их порядке.

В ItemsController я пытаюсь сделать код ниже (теперь только по категориям)

 $dataProvider = new CActiveDataProvider('Items', array( 'criteria' => array( 'with' => array('category'), 'condition' => 'user_id=' . Yii::app()->user->id, //'order' => 't.priority_order ASC', 'order' => 'category.priority_order ASC', ), )); 

Я был бы рад предоставить более подробную информацию, если все еще недостаточно ясно. Любая помощь будет оценена по достоинству.

Related of "Yii: Множественный порядок по условиям"

 $dataProvider = new CActiveDataProvider('Items', array( 'criteria' => array( 'with' => array('category'), 'condition' => 'user_id=' . Yii::app()->user->id, 'order' => 'category.priority_order ASC, t.priority_order ASC', ), )); 

Предоставление второго параметра для критериев заказа должно работать