【发布时间】:2014-01-27 00:20:54
【问题描述】:
我正在使用 Rails 构建 JSON API。因为客户端负责呈现错误消息,所以我想将默认错误消息替换为验证器的名称。例如,而不是 contact.errors.to_hash 返回这个:
{
:name=>["can't be blank"],
:email=>["can't be blank", "is invalid"],
:message=>["can't be blank"]
}
我希望它返回这个:
{
:name=>["presence"],
:email=>["presence", "format"],
:message=>["presence"]
}
在 Rails 中有简单的方法吗?
编辑:
我发现错误消息具有预定义类型,这些类型记录在 Rails Internationalization (I18n) API 中。例如,presence 映射到 blank。我不介意是否使用这些映射值。
【问题讨论】:
标签: ruby-on-rails ruby validation ruby-on-rails-4