我有一個方法,to_csv它收集來自該guest_idBooking表,但不是回傳guest_id,我想檢索first_name和last_name還有email從User表中,并把他們每個人的一排在CSV檔案中。我的方法如下:
def self.to_csv
attributes = %w[guest_id]
CSV.generate(headers: true) do |csv|
csv << attributes
all.each do |contact|
csv << attributes.map { |attr| contact.send(attr) }
end
end
end
有人知道我怎么做嗎?
uj5u.com熱心網友回復:
假設您在 中user定義了正確的一對一關系Booking。
def self.to_csv
attributes = %w[guest_id first_name last_name email]
CSV.generate(headers: true) do |csv|
csv << attributes
all.includes(:user).each do |booking|
csv << [booking.guest_id, booking.user.first_name, booking.user.last_name, booking.user.email]
end
end
end
請注意,現在guest_id,user.first_name,user.last_name,user.email是在一排。如果您想要不同的格式,可以相應地進行調整。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/351978.html
標籤:红宝石轨道
上一篇:為什么在請求測驗中不使用ActiveJobInlineAdapter?
下一篇:現代工業智慧配電箱技術特點
