我的第一句话是,您可能想就我应该如何做到这一点提出一种不同的方法。欢迎您的建议,并感谢您的帮助,但我现在需要很多时间来更改内容,因为它依赖于其他实现。所以现在,我会努力修复我已经得到的东西。
因此,用户拥有公文包项目(has_many:公文包)。公文包项目有许多推荐(has_many:推荐)和belongs_to:user。此外,推荐信属于:投资组合。推荐信在数据库表中有一列名为"评级"。
我需要做的是,在用户的视图中显示操作,从推荐(放在用户的投资组合项目上)中获得所有评级的平均值,并将其显示在那里(/users/id)作为用户的单个平均值(通过推荐对投资组合项目的所有评级)。例如,评级可以是:用户评级:4.7/5。
到目前为止我所做的:我在控制器show action(@portfolios=@user.portfolios)中抓取了用户的投资组合,然后我尝试了几种方法将推荐作为对象抓取,这样我就可以提取他们的评分,将所有内容相加,得到平均值。
这可能吗?(如果你需要任何其他信息,请让我知道,我会添加它)
任何建议或指导都会非常有帮助。
用于获取用户的所有证明,假设@user持有一个用户对象
Testimonial.where(portfolio_id: @user.portfolios.pluck(:id) )
或者在用户和证明之间建立关系,例如
User has_many :testimonials, through: :portfolios
然后CCD_ 1
(编辑:通过时出现语法错误)