gpt4 book ai didi

mysql - 如何使用 YII2 关系求和 hasMany?

转载 作者:可可西里 更新时间:2023-11-01 07:08:51 25 4
gpt4 key购买 nike

我正在使用 Yii2,我有两个表:

user (id)
answer_points (id, user_id, value)

如何通过过滤、按求和 DESC 和关系排序来对 gridview 中每个用户的所有点进行求和?

return $this->hasMany(\frontend\models\Points::className(), 
['user_id' => 'id'])->sum('value');

最佳答案

在你的 User 模型中,你应该有这个 getter

public function getPoints()
{
return $this->hasMany(\frontend\models\Points::className(), ['user_id' => 'id'])->sum('value');
}

在您的UserSearch 模型中,您可以这样做

public function search(...) {
$query = User::find()->joinWith('points'); //<--- alias to the getter defined above
...
}

现在您应该能够添加该列以在您的排序和过滤器中使用该列。

关于mysql - 如何使用 YII2 关系求和 hasMany?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33055170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com