0

我在一个模块中有一个方法,它生成一个名为 to_csv 的 csv 文件。

我的控制器动作:

def download_csv
    @rating = RatingSet.find(params[:rating_set_id])
    rating_id = @rating.id
     respond_to do |format|
                format.csv { send_data @rating.to_cvs(rating_id) }
  end
end

我的路线:

download_csv_co_view_rating_index GET  /co_view_rating/download_csv(.:format)     co_view_rating#download_csv

我的观点:

<small><%=link_to "Download CSV Data", :controller => "co_view_rating", :action => "download_csv", :rating_set_id => rating.id %></small>

当我点击链接时,链接将打开:

co_view_rating/download_csv?rating_set_id=6

但什么也没有发生。我错过了什么/做错了什么?

4

1 回答 1

0

您需要将格式类型传递给您的 link_to 助手:

<%= link_to "Download CSV Data", url_path(:format => :csv), ... %>

更新

如果您还需要包含参数,请执行以下操作:

<%= link_to "Download CSV Data", url_path(params.merge(format: "csv")), ... %>
于 2013-02-12T02:39:06.123 回答