0

我允许用户在 Rails 中将文件上传到我的网站

<div id="file_upload">
  <input type="file" name="user_file">
</div>

现在,在控制器中,我想将此文件传递给 Ruby系统调用。我想要的命令是

system("wget", "-i", **filename**)

应该用什么代替**filename**

4

2 回答 2

1

假设您比评论中提到的其他选项更喜欢这个,您可以做这样的事情。

File.open("tmp/filename.ext", "w") do |f|
 f.write(params[:file].read)
end

system("wget", "-i", "tmp/filename.ext")
于 2012-11-24T01:26:07.377 回答
0

首先,您需要确保您的表单标签具有 enctype="multipart/form-data" - 否则它将无法工作。

在控制器中,您可以访问类似这样的文件

@filename = params[:user_file].original_filename
@file_data = params[:user_file].read
于 2012-11-24T02:06:18.777 回答