Rails 3validationIPv4和IPv6格式

我知道IPv4和IPv6的validation格式。 但不确定如何将它们组合在一起,因此至少有一种格式应该是真的。 这是我的validation

validates :src_ip_addr, :presence => true, :uniqueness => true, :format => { :with => Resolv::IPv4::Regex, :message => "Not an valid IPv4 format"} validates :src_ip_addr, :presence => true, :uniqueness => true, :format => { :with => Resolv::IPv6::Regex, :message => "Not an valid IPv6 format"} 

如何将它们组合起来如果一种格式正确则validation应该有效。 仅当ipv4和ipv6格式不正确时才会失败。

谢谢。

您也可以将它们与Regexp.union结合使用:

 :format => { :with => Regexp.union(Resolv::IPv4::Regex, Resolv::IPv6::Regex) ...