Rails: различия в db/schema.rb — null: false в столбцах created_at/updated_at

Кто-нибудь знает, почему всякий раз, когда я запускаю rake db:migrate в своей производственной среде, файл schema.rb изменяется?

Различия только в столбцах created_at, update_at всех таблиц модели:

-    t.datetime "created_at"
-    t.datetime "updated_at"
+    t.datetime "created_at",            null: false
+    t.datetime "updated_at",            null: false

Я знаю, что это то, что он находит в рабочей базе данных, но почему они были созданы как null: false там, а не в базе данных разработки?


person Lazarus Lazaridis    schedule 09.09.2013    source источник
comment
структуры обеих баз данных полностью схожи?   -  person okliv    schedule 09.09.2013
comment
@okliv Они были созданы с использованием одних и тех же скриптов (миграции rails db). Очевидно, что таблицы, созданные в рабочей среде, различаются по этим столбцам, но почему?   -  person Lazarus Lazaridis    schedule 09.09.2013
comment
Все миграции прошли успешно?   -  person claptimes    schedule 09.09.2013
comment
@claptimes было бы прикольно, если бы не гротори спрятал это от нас =) но...   -  person okliv    schedule 09.09.2013
comment
@claptimes Да, все миграции прошли успешно.   -  person Lazarus Lazaridis    schedule 09.09.2013
comment
@okliv Лол, это было бы действительно смешно :)   -  person Lazarus Lazaridis    schedule 09.09.2013


Ответы (2)


У меня было то же самое на моей машине разработчика. Запуск db:drop в продакшене — не самая разумная идея, но что решит «проблему»:

rake db:drop db:create db:migrate

Моя версия mysql изменилась с тех пор, как я впервые создал базу данных с рельсами. Миграции по-прежнему выполнялись в соответствии со старой версией mysql.

Это то, что, вероятно, происходит в вашей производственной среде.

person lafeber    schedule 11.10.2013

Проверьте свою версию mysql в производственной системе и системе, в которой вы использовали режим разработки. Была аналогичная проблема со значениями по умолчанию.

Проверьте эту ссылку: https://www.ruby-forum.com/topic/134121

person AshwinKumarS    schedule 10.09.2013
comment
Вы можете вставить свою миграцию сюда? - person AshwinKumarS; 10.09.2013
comment
К сожалению, я не могу. - person Lazarus Lazaridis; 10.09.2013
comment
Проверьте это: stackoverflow.com/questions/2563297/ Любое использование? - person AshwinKumarS; 10.09.2013