你好,我想了解在Ruby on Rails中如何显示错误消息,更重要的是错误消息在页面上显示的顺序是如何确定的。
感谢您的时间。
你好,我想了解在Ruby on Rails中如何显示错误消息,更重要的是错误消息在页面上显示的顺序是如何确定的。
感谢您的时间。
显示错误的最常见方式是使用辅助程序error_messages
:
<%= f.error_messages %>
@my_object.errors
哈希中的错误消息添加一些HTML标记。错误消息是有序哈希,并且按照您在模型中指定验证的顺序排序(至少在我的应用程序中是这样的)。您可以在此处了解有关Errors类的更多信息。error_messages
只是一个辅助工具,因此您可以编写自己的辅助函数来显示错误消息。Active Record 提供了许多预定义的验证助手。每次验证失败时,错误消息都会添加到对象的错误集合中,并将此消息与正在验证的字段相关联。有关验证的更多详细信息,请参见这个优秀的指南。
我认为由于验证目标存储在哈希中,它们的顺序永远不能保证。但是有许多现有的插件可以自定义和增强默认验证。快速搜索可得到 CleverValidation 和 CustomErrorMessage...
您可能也会对这篇博客文章感兴趣,其中介绍了如何自定义验证。
some_object.errors
。它是否在打印结束时给出了@errors=#<OrderedHash {}>
? - klew