在Yii 1.1中,这段代码适用于默认排序:
$dataProvider = new CActiveDataProvider('article',array(
'sort'=>array(
'defaultOrder'=>'id DESC',
),
));
如何在Yii2中设置默认排序?
已尝试以下代码,但没有结果:
$dataProvider = new ActiveDataProvider([
'query' => $query,
'sort' => ['defaultOrder'=>'topic_order asc']
]);
9条答案
按热度按时间13z8s7eq1#
我认为有合适的解决方案。配置
yii\data\Sort
对象:Official doc link
o7jaxewo2#
或者
wnrlj8wa3#
defaultOrder包含一个数组,其中key是列名,value是
SORT_DESC
或SORT_ASC
,这就是下面代码不起作用的原因。正确的方式
注意:如果查询已经指定orderBy子句,一般使用者(透过排序组态)所提供的新排序指示将会附加到现有的orderBy子句。一般使用者(透过分页组态)的分页要求将会覆写任何现有的限制和位移子句。
您可以从Yii2 Guide of Data Provider中详细了解
通过在查询中传递Sort对象进行排序
qxsslcnc4#
如果你有CRUD(索引),你需要为GridView,或者ListView,或者更多的控件设置默认排序...示例
您需要添加
vktxenjb5#
试试这一个
pobjuy326#
bq9c1y667#
如guide中所述,您必须通过配置数据提供者的排序属性来指定其排序行为,该属性对应于yii\data\Sort的配置
voj3qocg8#
z9smfwbn9#
您可以像这样修改搜索模型,