Даже если я никогда не укажу :null => false
в моих миграциях, которые изначально добавляют столбцы в таблицы, rails все равно генерирует код в schema.rb
, который определяет столбцы как имеющие :null => false
. Почему это? Если я разрабатываю на своем боксе, а затем использую rake db:schema:load
на своем производственном боксе, у меня будет совсем другое поведение!
Редактировать: даже если я удаляю schema.rb
и запускаю rake db:schema:dump
, он все равно помещает :null => false
в новую схему, даже если она не определена в реальной базе данных. Кажется, он не может сказать, помечен ли столбец как разрешающий нули. Я использую SQLite, если это поможет.