2016-07-27 24 views
1

Ich bekomme undefinierte Methode send_data beim Erstellen mehrerer Tabs in der Tabelle. Ich bin nicht in der Lage zu verstehen, welche Daten mit dieser send_Data-Methode gesendet werden sollen.Nicht definierte Methode send_data

Hier mein Fehler ist:

NoMethodError (undefined method `send_data' for #<Class:0x007f911933cc58>): 

book = Spreadsheet::Workbook.new 
     sheet1 = book.create_worksheet :name => 'Sheet1' 
     sheet2 = book.create_worksheet :name => 'Sheet2' 
     sheet1.row(0).push "some content in Column1" 
     spreadsheet = StringIO.new 

     book.write spreadsheet 
     file = "#{Rails.root}/public/brand_store/Excelsheet" 

     send_data spreadsheet.string, :filename => "#{file}", :type => "application/vnd.ms-excel" 
+0

vielleicht gibt es keine 'send_data' Methode? –

+0

yeah Ich habe nicht send_data Methode tatsächlich erstellt keine Idee, was in send_data Methode senden .. Ich brauche ein Beispiel, wie Sie Daten senden mit send_data Methode – Nishtha

+0

send_data ist eine Rails [Helfer-Methode] (http://api.rubyonrails.org/ Klassen/ActionController/DataStreaming.html). Es scheint, dass Sie versuchen, eine Excel-Tabelle im Browser anzuzeigen, aber Ihr Code befindet sich im Modell, in dem Hilfsmethoden nicht zulässig sind. – MarsAtomic

Antwort

1

send_data verwendet binäre Datenformat-Browser zu machen, ist es nicht zugänglich in rails modelHere die offizielle Dokumentation für die send_data Methode. So einfach das ausge Spreadsheet Objekt und schreiben Code in Controller

In Ihrem Fall, ich denke, Sie Ihre Excel-Datei genration code in model, schrieb für Ihre Excel-Datei übertragen oder Sie können es in temporäre Datei speichern und machen es aus controller durch Bereitstellen dieses Dateipfads in send_data Methode.

Hoffe, das wird helfen.

Verwandte Themen