我想在Rails中做一个简单的文件上传。
我的模板:
<%= form_tag(controller: "my_controller", action: "change_profile_picture", multipart: true) do %><%= label_tag :file %> <%= file_field_tag :file %><%= submit_tag 'Submit' %><% end %>
我的处理程序:
def change_profile_picture profile_picture = params[:file] File.open(Rails.root.join('public', 'uploads', profile_picture.original_filename), 'wb') do |file| file.write(profile_picture.read) end redirect_to :test, params: { profile_picture: params[:file] } end
文件打开序列只是从Rails教程中获取的。
我的问题是,如果我进行检查,请检查类以及params [:file]上的所有其他内容,它是一个字符串,而检查仅向我显示了该字符串。例如:“ my_picture.jpg”。
输入不具有任何original_filename或文件应具有的任何其他属性。
任何的想法?
尝试
form_tag({controller: "my_controller", action: "change_profile_picture"}, multipart: true)