首先设置关联
public function getStatis()
{
return $this->hasOne(ProductStatis::className(), ['product_id' => 'id']);
}
然后在GridView中添加字段
'buy_number' => [
'attribute' => 'buy_number',
'value' => 'statis.buy_number'
],
在获取数据时设置可排序
$sort = $dataProvider->getSort();
// 添加用户名的排序规则
$sort->attributes['buy_number'] = [
'asc' => ['{{%product_statis}}.buy_number' => SORT_ASC],
'desc' => ['{{%product_statis}}.buy_number' => SORT_DESC],
];
// 重新设置排序规则
$dataProvider->setSort($sort);