2012-03-27 6 views
0

Ich versuche, die Ergebnisse der Umfragen von Surveryor Gem als CSV-Datei zu rendern, aber einen Fehler "Vorlage fehlt".Surveyor Gem zu Render CSV - Vorlage fehlt

Zum Beispiel localhost:3000/results/user-feedback-survey-1.csv Ergebnisse in:

Template is missing 

Missing template results/show, application/show with {:handlers=>[:erb, :builder, :coffee, :haml], :formats=>[:csv], :locale=>[:en, :en]}. Searched in: * "/websites/surveyportal/app/views" * "/usr/local/lib/ruby/gems/1.9.1/gems/surveyor-0.21.0/app/views" 

gleichen Fehler für .json. Ich habe gem 'fastercsv' zu meiner Edelsteindatei hinzugefügt.

Gibt es etwas, das mir fehlt? Ich verwende Rails 3.1.3.

+0

haben Sie 'bundle install' ausgeführt? – Josh

+0

Haben Sie eine Datei unter 'app/raesults/show.csv' oder' .erb' oder 'show. [Alles]' wirklich? – jefflunt

+0

Ich habe den Befehl 'bundle install' ausgeführt und das Juwel installiert. Ich hatte keine Datei unter 'app/views/results/show.csv' oder' show.csv.erb'. Ich habe es jetzt hinzugefügt und habe diesen Fehler nicht mehr. Was sollte ich der Vorlage hinzufügen, damit die Ergebnisse erzielt werden? Vielen Dank! – claptimes

Antwort

0

Ich bin mir sicher, dass es einen viel besseren Weg als diesen gibt, aber ich konnte es mit dem folgenden Code arbeiten, den ich aus einer gelöschten Version der Surveyor gem show.html.erb Datei gelernt habe.

<% csvString = "id, Code, " %> 
    <% @questions.each do |question| %> 
    <% next if question.display_order == 1 %> 
    <% csvString += "[" +question.display_order.to_s + "]" + question.text.to_s + "," %> 
<% end %> 
<% csvString += "\n" %> 
<% @response_sets.each do |r_set| %> 
<% csvString += r_set.id.to_s + "," + r_set.access_code.to_s %> 
<% @questions.each do |question| %> 
    <% next if question.display_order == 1 %> 
    <% csvString += display_response(r_set,question).to_s + "," %> 
<% end %> 
<% csvString += "\n" %> 
<% end %> 
<%= csvString %> 

Ich fügte es der Datei hinzu.