<% remote_form_for(@media, :url => url_for(:controller => :attachments,
:action => :add_from_disk, :object_id => @object),
:html => { :multipart => true, :id => 'new_media', :onsubmit=>'unsaved_changes = false' } ) do |f| %>
但如果我将remote_form_for更改为form_for,我不会收到此错误:
ActiveRecord::RecordInvalid (Validation failed: Document file name must be set.):
为什么它适用于form_for,而不适用于AJAX版本?
答案 0 :(得分:1)
您无法使用AJAX上传文件....您需要实施Flash上传器才能在后台发送文件。它不漂亮,但Uploadify很酷
建议将文件上传保存为常规表格。
答案 1 :(得分:0)
或者您可以使用jQuery form plugin,效果很好。在这种情况下,你会做一个普通的form_for,并在你的javascript文件中(一旦你在你的html中包含了jquery和jQForm lib),你就会做这样的事情:
$(function() {
$("#myFormDomID").ajaxForm({ iFrame : true });
});