繁体   English   中英

Rails:更改错误消息

[英]Rails: Changing Error Messages

我的错误消息没有自动显示,因此我决定使用Flash作为解决方法。 这就是我在做的

控制器:

flash[:notice] = @post.errors.full_messages

视图:

<%= flash[:notice] %>

然后,我在视图上收到了这个丑陋的错误消息。

["Content can't be blank", "Content is too short (minimum is 10 characters)"] 

但是至少,用户可以成功获取错误消息。 现在,我需要自定义错误消息,并使它看起来更漂亮。 我想我可以将每个错误语句解析为一些局部变量并显示出来(是否有更复杂的方法?)。 但是,我不知道如何自定义错误消息。 例如,“内容不能为空”应更改为“您将内容留为空白”。 我在哪里可以解决这个问题?

发生的是,当@post包含一些验证错误时, @post.errors.full_messages返回验证期间发生的一系列错误。

为了很好地显示它们,您可能想要做类似的事情

<%- flash[:notice].each do |error| %>
  <%= error %>
<% end %>

编辑糟糕,我读错了问题。

这些错误是模型中的验证错误,您可以在其中进行如下验证

validates您可以像这样传递自定义消息

validates :content, :presence => { :message => "You left the content blank" }

更新 :检查此链接以了解您拥有的选项

http://apidock.com/rails/ActiveModel/Validations/ClassMethods/validates

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM