Rails form_for mit file_field und remote => true und format =>: js

Ich übermittle ein form_for mit einem file_field darin. Wenn das Formular mit einem Beitrag gesendet wird, antwortet der Controller mit einer .js-Datei, die ausgeführt wird.

Das file_field ist optional.

Wenn ich eine Datei hochlade, wird die js-Datei in einem neuen Dokument (als einfache Textdatei) geöffnet und die js wird nicht ausgeführt. Wenn ich keine Datei hochlade, wird das Antwort-Div aktualisiert. Ich möchte, dass der Update-Erfolg in der Antwort div oder einer Fehlermeldung unabhängig vom Datei-Upload gemeldet wird.

Kann dies aus Sicherheitsgründen geschehen? Gibt es eine Problemumgehung für Personen, die dies tun möchten?

Grob,

Form teilweise _action.html.erb:

<div id="response"></div>
<%= form_for ... :remote => true, :url => {..., :format => :js} do |f| %>
    ...
    <%= f.file_field :name %>
<% end %>

Controller :: Aktion

 if not request.post?
    render :partial => 'controller/action'
    return
 else
    @response = "save was successful";
    # renders the action.js.erb
 end

action.js.erb:

$("#response").html("<%= @response %>");

Antworten auf die Frage(2)

Ihre Antwort auf die Frage