私のコントローラーには、次のアクションがあります。
def booking_sheet_report
@groups = Group.all.order('priority DESC')
respond_to do |format|
format.html
format.csv
format.pdf
end
end
ビューでは、button_to 要素をクリックしたときに、ユーザーが format.pdf を開く (ダウンロードする) ことができるようにしたいと考えています (booking_sheet_report.pdf.erb ビューがあります)。link_to ( <%= link_to 'PDF', booking_sheet_report_path(format: :pdf) %>
) を使用すると正常に動作します。
私は成功せずに以下を試しました:
<%= button_to "PDF", {action: "booking_sheet_report", :form => { "data-type" => "pdf" }}, {class: 'btn-u', method: :get} %>
<%= button_to "PDF", {action: "booking_sheet_report(format: :pdf)", :form => { "data-type" => "pdf" }}, {class: 'btn-u', method: :get} %>
2番目のものはエラーを出します:No route matches {:action=>"booking_sheet_report(format: :pdf)", :controller=>"reports", :form=>{"data-type"=>"pdf"}}
これがどのように可能であるか、または私が間違っていることについての手がかりはありますか?
編集:関連するルートの1つはget 'booking_sheet_report' => 'reports#booking_sheet_report'