在我看来,我一直包含以下部分(不是很枯燥):
<% if @model.errors.any? %>
...
<% @model.errors.full_messages.each do |msg| %>
...
<% end %>
<% end %>
但是,Rails 还提供 flash[:error]
功能。它是否仅适用于 Controller 异常等单一故障消息?或者我应该对所有内容使用 flash[:error]
并将模型错误复制到该哈希中?
最佳答案
诸如模型错误之类的事情可以存在于部分中;将有问题的对象作为本地对象传递:
<%= form_for(@micropost) do |f| %>
<%= render 'shared/error_messages', :object => f.object %>
就我个人而言,我认为 flash 作用域适用于不同类别的消息,但使用它来处理验证错误也没有什么根本上的“不正确”。
关于ruby-on-rails - 在 Rails View 中显示错误的不同方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8689669/