我在Rails 3中使用ActiveRecord从两个不同数据库中的两个不同表中提取数据.这些数据库不能相互连接,但我需要在事后进行简单的连接.我想保留这种关系,以便我可以将它链接起来.
这是我正在做的简化版本
browsers = Browser.all # <-- this is fairly small and can reside in memory
events = Event.where(:row_date=>Date.today).select(:name, :browser_id)
所以你可以看到,我想在事件关系中加入浏览器,其中browser_id应该等于browsers.name.事件是一种关系,我仍然可以在它上面添加子句,所以我不想在db上运行查询.我怎么做到这一点?
编辑
对于那些希望看到我在下面接受的答案的代码的人,这是我想出的:
class EventLog < ActiveRecord::Base
belongs_to :browser
def get_todays_events
Event.where(:row_date=>Date.today).select(:name, :browser_id).includes(:browser)
end
end
我会以下列方式获取浏览器名称
get_todays_events.browser.name
最佳答案 我会通过使用:include来实现这一点.在Ruby中尝试这样做会让你感到悲伤.你可以链接到包括就好了.