所以,我有一个动作:
$query = MyModel::specificFind();
$data = new ActiveDataProvider([
'query' => $query,
'sort' => [
'enableMultiSort' => True,
],
'totalCount' => MyModel::specificCount()
]);
在视图中:
<?= GridView::widget([
'dataProvider' => $data,
'columns' => MyModel::allowedAttributes(),
]) ?>
SQL查询看起来不错:
SELECT * FROM `my_model_table` WHERE `specific_id`=42 GROUP BY `id` ORDER BY `my_field` DESC LIMIT 20;
它是第一页,按照&#34; my_field&#34;选择了订单。因此,从SQL收到的数据是正确的。但由于某些原因,每次刷新页面时结果都会改组(所有查询和数据都相同)!
但是,它不会在排序列中具有不同值的数据块中混乱。因此,有价值的数据&#34; 5&#34;在排序列中将随机播放数据,使用&#34; 3&#34;,&#34; 4&#34;,&#34; 5&#34;表现完全像预期的那样。