我的RoR模板模型使用了一些验证。 一切正常后,更新表单将返回到重定向的URL,表示更新成功。 发生验证错误时,屏幕上没有任何反应。 我确实看到呈现了编辑表单,并带有其错误消息,但该表单未刷新。
搜索了stackoverflow,但是似乎没有任何内容可以反映这一点。尽管有一些有关结合Bootstrap和数据远程的提示
def update
respond_to do |format|
if @template.update(template_params)
format.html {
redirect_to templates_path(:customer_id=>@customer_id, :page_nr=>@page_nr) , notice: 'Template was successfully updated.'
}
format.json { render :show, status: :ok, location: @template }
else
format.html { render :edit,:locals => {:customer_id=>@customer_id, :page_nr=>@page_nr}, error: "Template could not be saved"}
format.json { render json: @template.errors, status: :unprocessable_entity }
end
end
end
<%= form_for(@template, :html => {:class=>"form-group"}, :remote=>true) do |f| %>
<% if @template.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@template.errors.count, "error") %> prohibited this template from being saved:</h2>
<ul>
<% @template.errors.full_messages.each do |message| %>
<li><%= message %></li>
<% end %>
</ul>
</div>
<% end %>
我希望使用收到的错误消息刷新当前表单,但是什么也没有发生。 同样,更新控制器的确返回状态为200的表格和错误消息,但调用屏幕的表格不会由此更新。