gpt4 book ai didi

mysql - 相关元素的 ActiveRecord 查询

转载 作者:行者123 更新时间:2023-11-30 23:35:13 24 4
gpt4 key购买 nike

我有一个解决方案模型,包含 has_many 评论,以及包含“has_many”ReviewValues 的评论。每个 ReviewValue 还链接到一个包含标签名称的标签。我正在尝试选择与特定解决方案一起使用的平均分数(对于所有按标签分组的标签)。

基本上 Reviews 模型是 Solutions 和 ReviewValues 之间的连接表(还有包含名称的 Tags 表)

我目前的情况是这样的:

@total = self.reviews.review_values.average(:score)

问题是我只能对一个特定的评论调用 review_values,而不能对所有评论调用。所以我必须做类似self.reviews.first.review_values...的事情,这对我没有帮助,因为我需要每个评论值的平均值(按标签名称)

review_values 表如下所示:

Table review_values
===================
id, tag_id, review_id, score, created_at, updated_at
-------------------
id int(11) PK
tag_id int(11)
review_id int(11)
score int(11)
created_at datetime
updated_at datetime

标签表:

Table tags
==========
id, name
----------
id int(11) PK
name varchar(255)

最佳答案

您尝试过使用 :through 吗?例如:

class Solution
has_many :reviews
has_many :review_values, :through => :reviews
end

@total = my_solution.review_values.average(:score)

关于mysql - 相关元素的 ActiveRecord 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8038857/

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