Cra*_*ker 9 validation ruby-on-rails ruby-on-rails-3
我有一个foo必须满足四个条件的字段串:
前两个由处理:presence和:uniqueness验证处理.后两者很容易:format通过正则表达式进行验证来处理 .
是否可以包含多个:format具有不同:message值的验证规则?
我想避免将这两个条件合并为一个正则表达式.除了多条消息之外,我认为如果它们不同,它们更容易阅读和写入.
理想情况下,我希望所有这些都能在一次validates通话中完成,但这并不是严格要求的.
Cra*_*ker 19
根据验证方法的源代码,没有办法做到; 你得到一个:format键和一组选项作为哈希值.
然而,没有什么可以阻止我validates两次打电话:
validates :foo,
:presence => true,
:uniqueness => true,
:format => {
:with => /^[\w\-]*$/,
:message => 'may only contain letters, digits, and hyphen'
}
validates :foo, :format => {
:with => /^(?!bar)/,
:message => 'may not start with "bar"'
}
Run Code Online (Sandbox Code Playgroud)
这似乎工作正常.
| 归档时间: |
|
| 查看次数: |
2604 次 |
| 最近记录: |