我正在开发一个网站,用户可以发布意见,以及评价意见。
反过来,我需要找到一种方法来计算已被评级为低或低的意见。
我正在研究那些已被评级的人。我在以下实体之间存在多对多关系:Opinion
和Rating
。
这两个实体通过名为OpinionRatings
的表连接在一起。以下是我到目前为止提出的查询。
@topUpSize = OpinionRating.find(
:first,
:select => "count(opinion_ratings.opinion_id) as count",
:joins => "inner join ratings on opinion_ratings.rating_id=ratings.id",
:group => "opinion_ratings.opinion_id",
:having => ["ratings.up=?", true]
)
我遇到的问题是我目前有两个单独的测试意见已被评级,所以应该显示的计数是两个,但是,显示的计数是一个。我不确定为什么会这样。
任何帮助都将不胜感激。