I'm trying to save a record which doesn't have one field set -- which has a validate numericality in the models. Even though the presence is not required in the validation, it's still throwing an error that the field is not a number.
Validation:
validates :network_id, :numericality => true
Code to that is saving model:
networks.each do |network|
network.url = network.raw_data.link
network.save!
end
Error:
Validation failed: Network is not a number
validates :network_id, :numericality => true, :allow_nil => true
validates :network_id, :numericality => {:allow_blank => true}
You should use allow_blank
validates :network_id, :numericality => true, :allow_blank => true
In Rails 4 (Ruby 2), you can write:
validates :network_id, numericality: { greater_than_or_equal_to: 0, allow_nil: true }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With