wiz*_*wiz 20 ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.2
我想在Rails 3.2.8上使用tag_form创建一个简单的文件上传器.
但是当我尝试提交图像文件时,我收到
错误消息(当我尝试提交图像文件时)
在CoursesController#attachment
"\ xFF"中编码:: UndefinedConversionError 从ASCII-8BIT到UTF-8
如果你帮我解决这个问题我会很感激的.
这是我的代码.
应用程序/视图/ show.html.erb
<%= form_tag(attachment_course_path, :action=>'attachment', :multipart => true) do %>
<div class="field">
<%= label_tag :file %>
<%= file_field_tag :file %>
</div>
<div class="actions">
<%= submit_tag 'Submit' %>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)
应用程序/控制器/ courses_controller.rb
def attachment
t = Time.now.strftime("%Y%m%d%H%M%S")
uploaded_io = params[:file]
File.open(Rails.root.join('public', 'upload', uploaded_io.original_filename), 'w') do |file|
file.write(uploaded_io.read)
end
end
Run Code Online (Sandbox Code Playgroud)
配置/ routes.rb中
resources :courses, :only => [ :show ] do
member do
post :attachment
end
end
Run Code Online (Sandbox Code Playgroud)
dim*_*uch 60
尝试以二进制模式打开文件('wb'而不是'w'):
...
File.open(Rails.root.join('public', 'upload', uploaded_io.original_filename), 'wb') do |file|
file.write(uploaded_io.read)
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13173 次 |
| 最近记录: |