validates_length_of :maximum 和 :minimum on ruby​​ on rails 的自定义错误消息

use*_*471 3 ruby ruby-on-rails ruby-on-rails-3 ruby-on-rails-4

我想为 :minimum 和其他为 :maximum 编写自定义错误消息

我有以下代码行

validates_length_of :user_name, :minimum=>5,:maximum=>30

  ej if the length of :user_name is < 5 "The user_name must to have 5 characters as minimum"
  ej if the length of :user_name is > 30 "The user_name must to have 30 characters as maximum" 
Run Code Online (Sandbox Code Playgroud)

tad*_*man 6

新的符号是:

validates :user_name,
  length: { 
    minimum: 5,
    maximum: 30,
    too_short: "The user name must have at least %{count} characters.",
    too_long: "The user name must have no more than %{count} characters."
  }
Run Code Online (Sandbox Code Playgroud)

文档中列出了更多示例。

旧的validates_length_of类型方法留在那里以供遗留支持,但在新代码中可能应该避免。