恐らく、安全な検索のためにhttps://github.com/activerecord-hackery/ransackのようなものを使用する必要があります。そして、あなたの意見で:
= form_for(@search) do |f|
= f.label :gender
= f.select :gender, ["Male", "Female"]
= f.submit "Filter"
# table of users
= link_to "Download CSV", students_path(format: 'csv'), class: 'download-csv'
CSVをフィルタを変更するたびに、テーブルをリロードし、他のコードが
$(document).ready(function() {
$('.download-csv').on('click', function (e) {
e.preventDefault();
var link = this;
var formData = $('form').serialize();
link.href = link.href.toString().replace(/\?.+$/, "?" + formData + "&format=csv");
location.href = link.href;
});
);
のparamsダウンロードリンクを更新すると、あなたのコントローラであなただけのレンダリング一つJSコードrequest[:format] == 'csv'
フィルタリングされたパラメータをCSVリンクに送信し、ダウンロードする前に結果をフィルタリングしてください。 –
こんにちは。コードの記述をデバッグするのは本当に難しいことです。あなたが実際に試したことと関連するスニペットを見せていただけますか?そのコードをコピー/貼り付け、変更して、あなたの役に立つ例を表示することができます:) –