2011-03-22 64 views
0

我有一個使用Nokogiri構建的大約1,000,000個ActiveRecord對象的列表。現在我正在調用每個對象上的方法來創建構建器並將其返回。然後我寫的建設者到已經打開的文件有:創建一個Nokogiri :: XML :: Builder對象是一個昂貴的過程?

builder.to_xml 

它工作正常,但我想知道如果不知何故,我可以創建一個空的建設者元素和克隆它(或東西,這可能是一樣昂貴的一個操作)並將其發送給AR實例方法。

回答

0

對於使用ERB或Erubis使用手工編碼模板生成XML的1,000,000個對象。

Nokogiri正在動態地創建每個元素,與已知每個對象的處理速度相比,這是昂貴的。

Erubis比ERB快,但ERB是Rails的標準。模板是可以互換的。

另一種替代方法是查看是否可以讓數據庫根據查詢以XML形式輸出選定的記錄。這將是生成數據文件的最快方式。

相關問題