Сортировка в СDetailView

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Olskit
Сообщения: 2
Зарегистрирован: 2018.04.11, 12:12

Сортировка в СDetailView

Сообщение Olskit » 2018.04.11, 12:34

Здравствуйте. Имеется данный код:

Код: Выделить всё

public function actionIndex() {
		$dataProvider = new CActiveDataProvider('Measure');
		$this->render('index', array(
				'dataProvider' => $dataProvider,
			));
	}
	
	public function actionView($id) {
		$this->render('view', array(
				'model' => $this->loadModel($id),
			));
	}
	
	public function loadModel($id) {
		$model = Measure::model()->findByPK($id);
		if ($model === null) {
			throw new CHttpException(404, 'The requested page does not exist.');
		}

		return $model;
	}
	
в контроллере и

Код: Выделить всё

$this->widget('zii.widgets.CDetailView', array(
	'data'=>$model,
	'attributes'=>array(
		'ME_ID',
		'ME',
		'DIR',
		'BEGIN',
		'END',
	),
));
во view. Записи отображаются по me_id в порядке возрастания. Подскажите, как реализовать обратную сортировку, чтобы запись с самым большим ME_ID была первой и далее по убыванию id.

Странник
Сообщения: 272
Зарегистрирован: 2013.04.08, 10:35
Откуда: Нижний Новгород

Re: Сортировка в СDetailView

Сообщение Странник » 2018.04.13, 17:09

Переписываешь actionIndex так:

Код: Выделить всё

public function actionIndex() {
$dataProvider = new CActiveDataProvider('Measure', array(
 'sort' => array(
'attributes' => array(
'asc' => 'ME_ID ASC',
'desc' => 'ME_ID DESC',
'default' => 'DESC',
),
'defaultOrder' => array(
'ME_ID' => CSort::SORT_DESC,
)
), 
) );
		$this->render('index', array(
				'dataProvider' => $dataProvider,
			));
	}

Olskit
Сообщения: 2
Зарегистрирован: 2018.04.11, 12:12

Re: Сортировка в СDetailView

Сообщение Olskit » 2018.04.14, 13:03

Странник писал(а):
2018.04.13, 17:09
Переписываешь actionIndex так:

Код: Выделить всё

public function actionIndex() {
$dataProvider = new CActiveDataProvider('Measure', array(
 'sort' => array(
'attributes' => array(
'asc' => 'ME_ID ASC',
'desc' => 'ME_ID DESC',
'default' => 'DESC',
),
'defaultOrder' => array(
'ME_ID' => CSort::SORT_DESC,
)
), 
) );
		$this->render('index', array(
				'dataProvider' => $dataProvider,
			));
	}
Никакой реакции что по desc, что по asc


Ответить