2010-11-29 20 views
21

Raylar uygulamasında CSV olarak ihracat verisine ihtiyacım var. Bu eklentiyi buldum: https://github.com/crafterm/comma. Daha iyi bir çözümden haberin var mı?Verileri raylarda CSV'ye dışa aktar

+3

Oldukça kapsamlı görünüyor ve veri ilişkileri, ** comma ** – ocodo

+1

ile sopa söyleyebilirim Comma raylarda benim için çalışmıyor. Https://github.com/econsultancy/csv_builder buldum ve iyi çalışıyor. – boblin

+1

Virgülün Rails 3'te çalışmadığını onaylayabiliriz. – Fletch

cevap

37

Ruby 1.9.x kullanılıyorsa, FasterCSV yerine CSV kullanın ve varsayılan sınırlayıcılarla yapıştırın.

Denetleyici:

respond_to do |format| 
    ...   
    format.csv { render :layout => false } 
end 

show.csv.erb:

<%= this_is_your_view_helper_method.html_safe %> 

controller_helper.rb:

require 'csv' 

def this_is_your_view_helper_method 
    CSV.generate do |csv| 
    Product.find(:all).each do |product| 
     csv << ... add stuff here ... 
    end 
    end 
end 
+10

FasterCSV aslında Ruby 1.9'da standart CSV kütüphanesi oldu, bu yüzden indirmeye gerek yok, eğer Ruby 1.9'daysanız zaten var. – Fletch

+1

Ayrıca raylar 3.x ile harika çalışıyor. –

+1

Notu için işaretle @Fletch! Bu cevap iki kez reddedildi ve neden olduğu hakkında hiçbir fikrim yok. Reddederseniz, lütfen neden bunu yaptığınızı bildirin. – hade

2

Ödeme Yakut 1.9.x içinde CSV kullanarak bu yığın taşması answer (Fletch'un belirttiği gibi FasterCSV'yi içerir ama biraz farklı sözdizimi içerir).

İlgili konular