我有正常的ModelSearch與ActiveDataProvider,我想添加一個虛擬/相關的屬性來排序gridview。如果我正在使用setSort,並且添加了這個唯一屬性,那麼所有其他屬性都不能再排序。有沒有一種內置的方式來添加一個屬性來排序?非常感謝!Yii2添加相關的屬性進行排序
public function search($params) {
$query = Za::find();
$dataProvider = new ActiveDataProvider([
'query' => $query,
'sort' => ['defaultOrder' => ['aonr' => SORT_ASC]],
'pagination' => [
'pageSize' => 15,
],
]);
$dataProvider->setSort([
'attributes' => [
'lwnr' => [
'asc' => ['lwnr' => SORT_ASC],
'desc' => ['lwnr' => SORT_DESC],
'label' => 'lwnr',
'default' => SORT_DESC,
],
]
]);
$this->load($params);
...
}
更新你的問題並添加RELAT ed ModelSearch code .. – scaisEdge
[This will help](http://www.yiiframework.com/wiki/621/filter-sort-by-calculated-related-fields-in-gridview-yii-2-0/) –
當然,但正如我所說,如果我使用setSort,那麼所有其他屬性停止排序,我將不得不再定義所有其他屬性。問題是,如果有一個內置的解決方案**添加**一個新的屬性來排序旁邊的現有的。 – user2511599