アプリケーション内でCSVをエクスポートしようとしていますが、Active Record find_byメソッドでエクスポートしたいレコードを検索するたびに、csvにActiveRecord Relations私が表示しようとしているデータの代わりに。Rails csv parsing - vs limitで検索
私はこれを行う際に、例えば:
@Products = Product.find_by(:name => @name)
を私はCSVに戻ってこれらの多くを得る:
Products = Product.limit(100)
:
#<Product:0x007ff0d234cef0>,#<Product:0x007ff0d6922ad8>
私はこれを行うがあればCSVは正確に表示されます。私のCSVに表示する関係を取り戻すために、特定の属性によってアクティブレコードを照会するにはどうすればよいですか?
PS私はこれは本当に簡単なチュートリアルで、次のよ
:https://www.codementor.io/victor_hazbun/export-records-to-csv-files-ruby-on-rails-vda8323q0
編集 - ここで私は、CSVファイルを生成するために使用しているコントローラのコードです:
def export
@products = []
@names = params[:nameselected].split(',').map(&:strip)
@names.each{|name|
name = name.slice!(0)
@products.push(Product.find_by(:name => name)
}
respond_to do |format|
format.html
format.csv { send_data @products.to_csv }
format.xls
end
エンド
は、def self.to_csv(options = {})
CSV.generate(options) do |csv|
csv.add_row column_names
all.each do |foo|
values = foo.attributes.values
csv.add_row values
end
end
end
ユーザがJavascriptで選択した商品名のリストを取り込み、それをCSVに生成したいのですが、私はちょうどJavascriptのCSVを作成することができますが、私は将来も共有可能にしたいです。
あなたはCSVを生成するために使用しているコードを追加することはできますか?私たちはあなたが実行しているコードを見ずにコードがうまく動作しない理由を教えてくれません –
@SimpleLime完了しました - 何か助けてください! –