我在我的网站上使用回形针上传头像。
我遇到的问题是,当我将表单设置为remote =>真正 帐户头像未更新。除头像外,所有其他属性都会更新。
当我使用重定向时,它工作正常。
我在我的网站上使用remotipart进行远程图像上传。通过远程请求上传图像的我网站的其他部分工作正常。
我对自己的错误感到困惑。
这是我目前为控制器所做的事情:
def update
@account = Account.getAccountById(session[:user])
if @account.update_attributes(params[:account])
else
end
end
在视图中:
<% form_for @account, :html => {:multipart => true}, :remote => true do |f| %>
感谢任何帮助。
谢谢,
布赖恩
更新
我正在使用remotipart gem。
当我使用remotipart_submitted修改条件语句时?它总是返回false。
另外,如果我检查params [:account] [:avatar] .blank?对于远程true,它总是返回true。
如果我删除remote =&gt;真的然后params [:account] [:avatar] .blank?如果文件字段有值,则返回true或false。
所以我很困惑为什么remote =&gt;如果没有检测到文件字段有值,则为true。
答案 0 :(得分:0)
问题是JavaScript不允许您通过XHR上传文件,因为它被认为是安全风险。解决这个问题的方法是创建一个iframe,将表单复制到iframe中,然后在iframe中正常提交。
您可以使用jquery.form.js
之类的内容自动执行此操作