我想通过remotipart + carrierwave上传远程文件。问题是我的上传工作,但它似乎像往常一样上传html。或者通过ajax上传,但不调用适当的js文件。 我有一个form_for与remote:true,并创建一个corrseponding控制器方法。由于表单以js的形式提交,因此使用了create.js.erb。
<% 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 %>
日志显示:
(0.1ms) begin transaction
(0.1ms) rollback transaction
Rendered layouts/_error_messages.html.erb (1.0ms)
Rendered syllabuses/create.js.erb (12.0ms)
有点奇怪的是,在create.js.erb之前渲染了error_messages,在create.js.erb中渲染了error_messages。
答案 0 :(得分:1)
我通过添加以下内容解决了这个问题:
<% if remotipart_submitted? %>
<% else %>
<% end %>