1

Ich möchte Remote-Datei hochladen über remotipart + carrierwave. Das Problem ist, dass mein Upload funktioniert, aber es scheint, dass es wie üblich html hochgeladen wird. Oder es wird über Ajax hochgeladen, aber entsprechende js-Datei wird nicht aufgerufen. Ich habe eine form_for mit remote: true und eine corresponding Controller-Methode erstellen. Da das Formular als js übergeben wird, wird create.js.erb verwendet.Hochladen von Dateien mit Remote: True und Remotipart + Carrierwave Edelsteine ​​

<% if @syllabus.errors.present? %> 
    $('#syllabus-errors').html('<%= escape_javascript(render 'layouts/error_messages', object: @syllabus) %>'); 

<% else %> 
    alert("ds"); 
    $('#modal-body').html(<%= escape_javascript(render 'layouts/thanks') %>); 
    $('#syllabus-errors').html(""); 
<% end %> 

Logs zeigen dies:

(0.1ms) begin transaction 
    (0.1ms) rollback transaction 
    Rendered layouts/_error_messages.html.erb (1.0ms) 
    Rendered syllabuses/create.js.erb (12.0ms) 

Es ist irgendwie seltsam, dass Error_messages früher gemacht werden, dass create.js.erb, Error_messages innerhalb create.js.erb gemacht werden.

+0

kann den Controller-Code für die Erstellungsaktion veröffentlichen? Deine js.erb sieht gut aus ... – JeffD23

Antwort

1

aufgelöst ich dieses Problem durch das Hinzufügen, wenn:

<% if remotipart_submitted? %> 
 

 
<% else %> 
 

 
<% end %>
weiß nicht, warum es nicht ohne sie nicht funktioniert.