テーブルのエクスポートについて http://railscasts.com/episodes/362-exporting-csv-and-excel?view=asciicastを見て、すべての手順に従ってください。
私は私のaplication.rbにあります:
require 'csv'
mime_types.rb に MimeType を追加:
Mime::Type.register "application/xls", :xls
私のコントローラー:
def index
if params[:report] && params[:report][:start_date] && params[:report][:end_date]
start_date = params[:report][:start_date]
end_date = params[:report][:end_date]
@financial_reports = current_user.financial_reports.where(:created_at => start_date.to_date..end_date.to_date)
respond_to do |format|
format.html # index.html.erb
format.csv { send_data @financial_reports.to_csv }
format.xls
format.json { render json: @financial_reports }
end
end
終わり
私のモデルでは:
def self.to_csv(options = {})
CSV.generate(options) do |csv|
csv << column_names
all.each do |product|
csv << product.attributes.values_at(*column_names)
end
end
終わり
最後に - ビュー内のリンク:
<%if @financial_reports%>
Download:
<%= link_to "CSV", financial_reports_path(format: "csv") %> |
<%= link_to "Excel", financial_reports_path(format: "xls") %>
...
<%end%>
Excel リンクをクリックすると、エラーが発生します。
undefined method `each' for nil:NilClass
しかし、テーブル(html)にデータが表示されます!
また、CSV をクリックすると、次のようになります。
Template is missing
構成ファイルに何かを追加したときに、アプリケーションを再起動しました。
誰かが私を助けることができますか?