Rubyを使用してフロントエンドからmysqlにcsvファイルのインポートを実装しています。これは私のコントローラーコードです
「csv」が必要
デフ csv_import
@parsed_file=CSV::Reader.parse(params[:dump][:file])
n=0
@parsed_file.each do |行|
c=顧客情報.new
c.job_title=行[1]
c.first_name=row[2]
c.last_name=row[3]
c.save の場合
n=n+1
GC.start if n%50==0
終わり
flash.now[:message]="CSV インポート成功、#{n} 件の新しいレコードがデータベースに追加されました"
終わり
これは私のフロントエンドコードです。
<pre>
<% form_for :dump, :url=>{:controller=>"customer_informations", :action=>"csv_import"}, :html => { :multipart => true } do |f| -%>
<table">
<tr>
<td>
<label for="dump_file">
Select a CSV File :
</label>
</td>
<td >
<%= f.file_field :file -%>
</td>
</tr>
<tr>
<td colspan='2'>
<%= submit_tag 'Submit' -%>
</td>
</tr>
</table>
<% end -%>
</pre>
今私が欲しいのは、DBに約30列あり、csvには30列の見出しが含まれます。また、確認のために、 textfield を使用して列の 1 つを入力として尋ねると、csv シートに 29 列が作成されます。ユーザーが選択したオプションに従って、29 列の線量がテキスト ボックスから選択されたエンティティに関連付けられます。
どんな助けでも大歓迎です。
ありがとうございました