我正在使用ArrayDataProvider并按降序获得按“位置”排序的数据:
$dataProvider = new ArrayDataProvider([
'key' => 'id',
'allModels' => $rows,
'sort' => [
'attributes' => ['lastname', 'firstname', 'position'],
'defaultOrder' => [
'position' => SORT_DESC,
]
],
]);
在“位置”中,我只有1、2、3、4、5。并且我需要按以下顺序显示信息:4、3、2、1、5。使用ActiveDataProvider时,我会这样:>
$dataProvider = new ActiveDataProvider([
'query' => Pt::find()->where(['team_id' => $model->id])
->OrderBy(new \yii\db\Expression('FIELD (`position`, 4, 3, 2, 1, 5)')),
]);
如何使用ArrayDataProvider做同样的事情?