我有4个位置,我从遗留系统中提取数据 我将3个位置拉入一个模型(因为我将数据加载到同一个表中) 第四个位置必须位于单独的数据库中。
我想知道是否有办法将模型中的2或轨道中的2个模型组合在一起。
以下是我目前的情况:
class Fyf003 < ActiveRecord::Base
establish_connection "turnkey"
end
另一个是:
class WccFyf003 < ActiveRecord::Base
establish_connection "turnkey_wcc"
def self.table_name() "fyf003" end
end
我猜这不是正确的方法,这就是为什么我在这里。
表格布局和名称相同。
如果您需要更多信息或者可以指出我正确的方向,那就太棒了。
感谢您的帮助。
答案 0 :(得分:1)
我发现我可以使用:
sql = "SELECT * FROM turnkey.fyf003
UNION ALL
SELECT * FROM turnkey_wcc.fyf003"
lot_data = Fyf003.find_by_sql(sql)
如果有人有更好的想法,我就是全力以赴。
修改强> 我发布自发布以来,如果数据相同,您可以执行以下操作:
data1 = Fyf003.all
data2 = WccFyf003.all
all_data = data1+data2
它只是组合了数组,你仍然有单独的对象,但你可以在它上面使用.collect(&amp;:field)并让它工作。
如果有人拥有它,仍然在寻找最佳解决方案。
答案 1 :(得分:0)
我猜你正在使用多个模型映射到一个表。如果是这种情况,请在您的模型中;
set_table_name 'table_name'
set_primary_key 'primary_key'