0

我正在尝试将Surveryor gem 的调查结果呈现为 CSV 文件,但出现“模板丢失”错误。

例如,localhost:3000/results/user-feedback-survey-1.csv结果:

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" 

相同的错误.json。我已添加gem 'fastercsv'到我的 gem 文件中。

有什么我想念的吗?我正在使用 Rails 3.1.3。

4

1 回答 1

0

我确信有比这更好的方法,但我能够使用以下代码使其工作,我从已删除版本的Surveyor gem show.html.erb文件中收集到这些代码。

<% 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 %>

我将它添加到/app/views/results/show.csv.erb文件中。

于 2012-03-28T16:38:40.350 回答