簡體   English   中英

Rails組合了兩個不同的活動記錄對象

[英]Rails combine two different active record objects

我有兩個表位於兩個不同的數據庫中。

例:

駐留在db1中的用戶,其屬性為user_id和name

審計駐留在db2中的屬性id和user_id

User.find_by_sql("SELECT * FROM users")

Audit.find_by_sql("SELECT * FROM audits")

如何基於user_id組合這兩個查詢結果的結果

預期輸出行=> user_id audit_id名稱

如果你想在ruby中這樣做,你可以使用映射

users = User.find_by_sql("SELECT * FROM users")

audits = Audit.find_by_sql("SELECT * FROM audits")

result = []
users.each do |u|
   result << { 
     user_id: u.id,
     name: u.name,
     audits: audits.find_all { |a| a.user_id == u.id } 
   }
end

result

# result will include all user audits

在地圖中,您可以使用您喜歡的任何內容構建哈希

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM