class Incline::IpAddressValidator
Validates a string contains a valid IP address.
Public Instance Methods
validate_each(record, attribute, value)
click to toggle source
Validates attributes to determine if the values contain valid IP addresses.
Set the :no_mask option to restrict the IP address to singular addresses only.
# File lib/incline/validators/ip_address_validator.rb, line 12 def validate_each(record, attribute, value) begin unless value.blank? IPAddr.new(value) if options[:no_mask] if value =~ /\// record.errors[attribute] << (options[:message] || 'must not contain a mask') end elsif options[:require_mask] unless value =~ /\// record.errors[attribute] << (options[:message] || 'must contain a mask') end end end rescue IPAddr::InvalidAddressError record.errors[attribute] << (options[:message] || 'is not a valid IP address') end end