如何在没有插件的情况下在Rails中上传文件

时间:2012-09-12 08:02:28

标签: ruby-on-rails file-upload ruby-on-rails-3.2

我对rails非常陌生,我一直在寻找如何将文件上传到Rails中的目录我发现这个Upload Files但是我真的不明白它我无法得到它工作。

这是我的观点:

<%= form_for :upload, :html => {:multipart => true} do |f| %>
  <%= f.file_field :my_file %>
  <%= f.submit "Upload" %>
<% end %>

这是我的控制器:

def upload
  path = File.join("public/folder", upload["datafile"].original_filename)
  File.open(path, "wb") { |f| f.write(upload["datafile"].read) }
end

我还尝试了Rails Guides

的上传文件部分

它说堆栈级别太深了,有人可以帮助并尝试尽可能简单地向我解释一下吗?

由于

1 个答案:

答案 0 :(得分:0)

在ROR中上传类似

name =  upload['datafile'].original_filename
directory = "public/data"
# create the file path
path = File.join(directory, name)
upload_file = File.new(upload['datafile'], "rb").read
# write the file
File.open(path, "wb") {|f| f.write(upload_file) };

使用它可能对你有所帮助...........