rails 3中的Validators消息

时间:2011-01-15 19:07:26

标签: ruby-on-rails-3 model message validation

在Rails 3中,验证器已更改:现在可以一次指定特定字段的所有验证器:

所以改为写入

Rails 2.x.x风格
    validates_size_of :username, :within => 5..15, :message=> "username size must be between 5和15“

现在我可以写
了    
Rails 3风格

 validates :username,  :length => { :minimum => 5, :maximum => 40 }

但如果我添加:messge =>在最后一个例子(Rails 3样式)中出现“bla bla bla”错误,所以问题是: 如何编辑个人错误消息到模型,以便在视图中显示它们?

谢谢

1 个答案:

答案 0 :(得分:1)

使用简写validates :model方法时,您只能在特定验证程序的上下文中添加特定消息。例如:

validates :username, :length => { :minimum => 5, :maximum => 40, :message => 'should be between 5 and 40 characters' }

请注意,该消息位于:length密钥的哈希值中。否则Rails不知道该消息应该应用于哪个验证器。