Ruby on Rails: form_for работает, но remote_form_for не работает - PullRequest
1 голос
/ 30 июля 2010
<% 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?

Ответы [ 2 ]

1 голос
/ 30 июля 2010

Вы не можете загрузить файл с помощью AJAX .... Вам нужно будет использовать Flash Uploader для отправки файлов в фоновом режиме.Это не красиво, но Uploadify довольно круто

Рекомендую сохранять загрузку файлов как обычную форму для.

0 голосов
/ 30 июля 2010

Или вы можете использовать jQuery-плагин , который прекрасно работает.В этом случае вы бы сделали обычный form_for, а внутри вашего файла javascript (как только вы включили jquery и библиотеку jQForm в ваш html) вы бы сделали что-то вроде этого:

$(function() { 
  $("#myFormDomID").ajaxForm({ iFrame : true }); 

});

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...