我在 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)
如您所见,我想加入关系,应该browsers
在哪里相等。是一个关系,我仍然可以向它添加子句,所以我还不想在数据库上运行查询。我将如何做到这一点?events
browser_id
browsers.name
events
编辑
对于那些希望看到我在下面接受的答案的一些代码的人,这是我想出的:
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