私はCSVファイルを持っています。ファイルに英語の文字のみが含まれていれば、すべて正常に動作し、ファイルはアップロードされ、データが含まれます。しかし、ファイルに英語以外の文字が含まれている場合はアップロードされますが、アップロードされたファイルは空です。Rails 3:英語以外の文字でcsvファイルをアップロードする
希望、誰でも手伝うことができます。
UPDATE:
背景: レール:レール3.0.9、Rubyの:ルビー1.9.2
フォーム:
<%= form_tag({:action => :import}, :multipart => true) do |f| %>
<%= collection_select(:contact, :list_id, current_user.lists, :id, :title) %>
<%= file_field_tag 'upload' %>
<%= submit_tag("Import") %>
<% end %>
コントローラー:
def import
begin
Contact.upload(params[:upload], current_user, params[:contact][:list_id])
redirect_to :action => "index"
rescue Exception => e
end
end
モデル:
def upload(uploaded_io, user_id, list_id)
File.open(Rails.root.join('public', 'uploads', uploaded_io.original_filename), 'w') do |file|
file.write(uploaded_io.read)
end
self.import(uploaded_io.original_filename, user_id, list_id)
end
どのようにファイルをアップロードしますか?あなたが使っているルビのバージョンは? – NARKOZ