2015-09-30 72 views
0

我在軌道上新,我花了我的一天尋找解決方案,導出我的數據到Excel文件。Rails卓越與協會

我試過to_xls,simple_xlxs和其他寶石,我也嘗試渲染xml模板,但我沒有成功。

所以我要協會 2之間的車型:

呼叫模型:

class Call < ActiveRecord::Base 
    belongs_to :number 
    has_many :results 
end 

和我結果型號:

class Result < ActiveRecord::Base 
    belongs_to :call 
end 

,所以我需要genrate Excel表格用我在表中調用OWN標題,因爲我想要。 而且我也不想在這個excel文件中列出我的相關模型

我該怎麼辦? 感謝

+0

你可以添加一些關於你的_specific_問題的細節嗎?例如,你的代碼構建了excel文件,輸出結果和你期望的結果? – ABMagil

回答

2
# install in a gem file or in the terminal to test 
# gem install spreadsheet 


require 'spreadsheet' 

Spreadsheet.client_encoding = 'UTF-8' 

book = Spreadsheet::Workbook.new 
sheet1 = book.create_worksheet :name => 'test' 

money_format = Spreadsheet::Format.new :number_format => "#,##0.00 [$€-407]" 
date_format = Spreadsheet::Format.new :number_format => 'MM.DD.YYYY' 

# set default column formats 
sheet1.column(1).default_format = money_format 
sheet1.column(2).default_format = date_format 

# depending on your data you obviously have to create a loop that fits the format of your data 
sheet1.row(0).push "just text", 5.98, DateTime.now 

book.write 'sample.xls' 

上面的代碼示例中的數據寫入到您創建列。你可以在csv風格中獲得你的信息。所以如果你要返回對象,你可以爲每個對象獲取值,並用','分隔和循環來加入數組。

+0

歡迎來到StackOverflow!請編輯您的答案,以提供有關如何使用此代碼示例的一些上下文,以及它如何幫助解決問題。 –

+0

嗨@ fgc29,在這種情況下,你應該寫下你剛寫的內容作爲對你問題的編輯,而不是作爲評論的答案。您隨時可以編輯自己的問題。 –