我有一个表单正在尝试读取 JSON 文件以进行解析/操作/等。我在控制器中读取它时遇到问题。
View:
<%= form_tag({:controller => :admins, :action => :upload_json}, {:multipart => true, :method => :post}) do |f| %>
<%= file_field_tag 'datafile' %>
<%= submit_tag "Upload" %>
控制器:
def upload_json
file_data = params[:datafile]
File.read(file_data) do |file|
file.each do |line|
## does stuff here....
end
end
end
我的中也有类似的功能seed.rb
当我播种数据时,我无法读取文件 - 只是无法读取上传的文件。
我收到的错误是:can't convert ActionDispatch::Http::UploadedFile into String
.
先谢谢您的帮助!
弄清楚了。需要改变:
file_data = params[:datafile]
to
file_data = params[:datafile].tempfile
并决定使用.open
要改变的功能:
File.read(file_data) do |file|
to
File.open(file_data, 'r') do |file|
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)