现在我正在编写项目管理应用程序Redmine的插件。 由于我是Rails的新手,我对查询有疑问。
Redmine为我提供了一个问题模型。在我的插件中,我正在定义一个额外的IssueRates模型,它具有以下关联:
class IssueRates < ActiveRecord::Base
unloadable
belongs_to :issue,
...
但是,我不想将标准问题模型更改为has_one association
,以使redmine代码尽可能保持干净。
但现在我需要这样的查询:
project_issues=Issue.where(:project_id => some_id)
project_issues.each do |i|
puts i.IssueRates.amount
end
由于缺少关联,这显然不起作用。有没有办法扭转这种关联?因为那时,我甚至可以使用.includes(:IssueRates)
的急切加载。
如果无法做到这一点,我仍然可以在单独的查询中获取IssueRates ......
答案 0 :(得分:1)
我想你可以这样做:
IssueRates.find_by_issue_id(i.id).amount
似乎更多的工作不仅仅是在问题模型中添加has_one
。