我使用yii-user extension创建了一个带有Yii的网络应用。在用户列表页面上,显示按create_at命令的用户列表。
我想按用户名显示用户列表顺序。
这是原始代码:
public function search()
{
$criteria=new CDbCriteria;
$criteria->compare('id',$this->id);
$criteria->compare('username',$this->username,true);
$criteria->compare('password',$this->password);
$criteria->compare('email',$this->email,true);
$criteria->compare('activkey',$this->activkey);
$criteria->compare('create_at',$this->create_at);
$criteria->compare('lastvisit_at',$this->lastvisit_at);
$criteria->compare('superuser',$this->superuser);
$criteria->compare('status',$this->status);
return new CActiveDataProvider(get_class($this), array(
'criteria'=>$criteria,
'pagination'=>array(
'pageSize'=>Yii::app()->getModule('user')->user_page_size,
),
));
}
我添加了此代码。
$criteria->order = "username ASC";
添加后,无论是否点击标题,用户列表都只按用户名排序。
如何设置默认排序顺序?
答案 0 :(得分:5)
使用sort属性:
return new CActiveDataProvider(get_class($this), array(
'criteria' => $criteria,
'sort' => array(
'defaultOrder' => 'username ASC',
),
));