表:
User
Project has_many Results
Project has_many Data through ProjectData
Results belongs_to data, project
在Result
表中,我有一列:position
int 类型。
所以我想results
用 a得到所有的level < 50
,实际上是 的值count
。
我正在考虑添加 Result 类
def get_top_level current_user
tsum = []
Project.where(user_id: current_user).each do |project|
tsum << project.results.where("level <= ?", 50).count
end
return sum(tsum)
end
这会起作用,但我觉得应该有一种更简单、更漂亮的方法来做到这一点。
是否可以在视图中使用类名并传递不同的值,例如:
<%=Results.get_top_level(current_user)%>
或者
<%=@results.get_top_level(current_user)%>
如果这些都不是一个好的做法,你能帮我找到一个替代解决方案吗?
谢谢你。