en un modelo de rieles tengo un atributo is_subscriber
, cuando construí una migración db para añadir esta columna a la base de datos que se especifica el valor predeterminado que es falsa:Rails valores predeterminados de la base de datos y validación de modelo para los campos booleanos
t.boolean "is_subscriber", :default => false
también he especificado en el modelo que este atributo debe estar presente:
validates :is_subscriber, presence: true
Entonces, ¿por qué recibo este error cuando se crea una instancia de modelo sin especificar este atributo?
2012-05-08T21:05:54+00:00 app[web.1]: ActiveRecord::RecordInvalid (Validation failed: Is subscriber can't be blank):
Buen punto (votado), pero no creo que la regla de la base de datos lleve a que esto sea validado con éxito en ese caso tampoco, ¿no? –
@SteveRowley ¿por qué no? Los rieles manejan la conversión de datos entre tipos, por lo que funciona como un amuleto. Tenga en cuenta que la sintaxis de migraciones también se traduce en sintaxis db. – Fabio
¡Gracias por la solución! –