[有多少个错误信息发生],像这类出错信息可以自己制作,符合自己所需的模板。
代码:
/app/helper/application.rb
/app/views/system/_error_messages_for.rhtml
在form等rhtml内
代码:
/app/helper/application.rb
module ApplicationHelper
def template_error_messages_for (object_name, options = {})
options = options.symbolize_keys
object = instance_variable_get("@#{object_name}")
return nil unless object
unless object.errors.empty?
render :partial=>"system/error_messages_for",
:locals=>{:messages=>object.errors.full_messages, :object=>object}
end
end
end
/app/views/system/_error_messages_for.rhtml
<div class="errorExplanation" id="errorExplanation">
<h2><%= messages.size %>个错误导致无法保存。</h2>
<p>请确认以下错误信息。</p>
<ul>
<%- messages.sort.each do |mes| -%>
<li><%= mes %></li>
<%- end -%>
</ul>
</div>
在form等rhtml内
<%= template_error_messages_for 'obj' %>