我有一个包含文件输入的表单;
<%form_tag '/dboss/newsbsresult' , :remote=>true do %>
<input type="file" id="examsendbutton" name="txtsbs"/><br/>
<input type="submit" value="Gonder">
<%end%>
这里我希望用户选择一个我尝试在服务器上解析和使用的 txt 文件,但是我无法使用此代码捕获上传的文件,
def newsbsresult
@u = params[:txtsbs] #Or params[:txtsbs].to_s
p @u
end
实现这一目标的真正方法是什么?
最佳答案
AJAX 请求不支持开箱即用的文件上传——或者在技术上根本不支持。这是因为 JavaScript 无法直接从文件字段中读取数据(HTML 5 除外)。有许多方法可以进行类似 AJAX 的文件上传(例如 file-uploader 或 uploadify ,以及较早的技术),但 Rails 不通过简单地设置 :remote => true
来支持这些 -你必须使用其他东西/额外的东西才能让它工作。
简单的解决方案是删除 :remote => true
和添加 :multipart => true
。
进一步阅读:
关于html - 如何在 Rails3 中解析上传的 txt 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5053319/