基本的に私は3つのことを扱っています: (*最初の2つの作業)
- user_id パラメータを受け入れる Index() と呼ばれるアクション。
- CSVエクスポート機能
- インデックス ビューからの CSV エクスポート ファイルへの必要なリンク。link_to メソッドを理想的に利用します。
最初の 2 つは完全に機能し、user_id パラメータを使用して CSV ファイルのスコープを適切なユーザーに限定する必要があるため、link_to メソッドを使用してリンクを生成することにつまずいています。
ここに私のコントローラコードがあります:
def index
@pro = Pro.find_by_user_id(params[:user_id])
csv_code = CSV.generate do |csv|
@pro.accounts.each do |account|
csv << [account['name'],account['number']]
end
end
respond_to do |format|
format.html
format.csv { render :csv => csv_code}
end
end
index.html.haml: * パラメータ 1234 が欠落していることに注意してください。これは csv を生成する必要があります
= link_to image_tag "export.png", {:action => :index.csv}
CSV を生成するために機能する URL:
http://localhost:3000/.csv?user_id=1234
これは非常に簡単に解決できる問題だと確信しており、明らかな解決策を見落とすのに 1 時間費やしました。前もって感謝します!