В модели Rails У меня есть атрибут is_subscriber
, когда я построил миграции дб, чтобы добавить этот столбец в базе данных я указал значение по умолчанию, чтобы быть ложным:Rails по умолчанию базы данных и модели проверки для булевых полей
t.boolean "is_subscriber", :default => false
Я также указан в модели, что этот атрибут должен присутствовать:
validates :is_subscriber, presence: true
Так почему я получаю эту ошибку, когда я создаю экземпляр модели без указания этого атрибута?
2012-05-08T21:05:54+00:00 app[web.1]: ActiveRecord::RecordInvalid (Validation failed: Is subscriber can't be blank):
Хороший вопрос (проголосовали), но я не думаю, что правило базы данных приведет к тому, что это будет подтверждено успешно в этом случае, верно? –
@SteveRowley почему бы и нет? Rails обрабатывает преобразование данных между типами, поэтому он работает как шарм. Имейте в виду, что синтаксис миграции также преобразуется в синтаксис db. – Fabio
Спасибо за решение! –