响应者gem:在flash消息中添加模型的基本错误?

时间:2018-01-29 16:32:01

标签: ruby-on-rails validation responders

是否有一种简单的方法可以将模型的基本错误添加到responders gem中的flash消息中?

当我尝试删除具有dependent: :restrict_with_error设置的依赖子项的记录时,我会看到“X无法被销毁”之类的错误,但仅此而已。

检查记录,我发现base添加了一个额外的错误:

@messages={:base=>["Cannot delete record because dependent children exist"]}, @details={:base=>[{:error=>:"restrict_dependent_destroy.has_many", :record=>"children"}]

是否有一种简单的方法可以将基本错误附加到Flash消息中?

1 个答案:

答案 0 :(得分:0)

您使用以下代码来显示Flash错误消息

if object.destroy
    flash[:success] = "Success Message"
elsif object.errors.messages[:base].present?
    flash[:error] = object.errors.messages[:base]
else
    flash[:error] = 'Object Not Destroyed'
end

并在视图上编写以下代码以显示Flash消息

<% flash.each do |key, value| %>
  <div class="alert alert-<%= key %>"><%= value %></div>
<% end %>