Size: a a a

Django [ru] #STAY HOME

2020 April 12

Н

Никита in Django [ru] #STAY HOME
у меня есть другой баг, периодически некоторые уже выполненные миграции помечены как невыполненные и приходится 20 миграций ручками делать, чтобы знать какие фейкануть, а какие нужно применить
источник

Н

Никита in Django [ru] #STAY HOME
очень неудобно
источник

Н

Никита in Django [ru] #STAY HOME
он бы не ругался б на table already exists
источник

A

Aquinary in Django [ru] #STAY HOME
Никита
т.е. если ты меняешь модель и не лазишь ручками в базу, то можно легко поддерживать актуальное состояние базы данных
Как видно, в базу никто не лез, файлы миграций не трогались, но почему-то они перестали адекватно работать и создавать таблицы. :(
источник

AD

Alex Dem in Django [ru] #STAY HOME
Aquinary
Я тогда не понимаю, для чего нужны все эти манипуляции с --fake и проч. И если бы это работало ещё.
а ну вот кажется и наклевывается сценарий по которому вы пришли к проблеме
источник

AD

Alex Dem in Django [ru] #STAY HOME
Aquinary
Как видно, в базу никто не лез, файлы миграций не трогались, но почему-то они перестали адекватно работать и создавать таблицы. :(
python manage.py migrate --fake-initial, Django увидит начальную миграцию, и что таблицы, которые необходимо создать, уже существуют, и просто пометит миграцию как уже выполненную.

вероятно, ты сделал -fake и не получил таблицу в БД
источник

Н

Никита in Django [ru] #STAY HOME
Alex Dem
а ну вот кажется и наклевывается сценарий по которому вы пришли к проблеме
ага
источник

Н

Никита in Django [ru] #STAY HOME
убийца - дворецкий
источник

AD

Alex Dem in Django [ru] #STAY HOME
а потом просто пытался мигрировать
а запись в django migrations уже есть
источник

Н

Никита in Django [ru] #STAY HOME
fake метит миграцию выполненной, но в базу ничего не пишет
источник

A

Aquinary in Django [ru] #STAY HOME
"Так, мне нужна таблица, которая будет хранить историю действий юзера. Так, вот тебе моделька, вот тебе поля. Готово.
Теперь мейкмигратион и миграте."
В каком месте у меня ошибка?
источник

A

Andrey in Django [ru] #STAY HOME
Никита
у меня есть другой баг, периодически некоторые уже выполненные миграции помечены как невыполненные и приходится 20 миграций ручками делать, чтобы знать какие фейкануть, а какие нужно применить
Django_migrations  таблицу никто не трогает?
источник

A

Aquinary in Django [ru] #STAY HOME
И нет, я не делал никаких фейк и проч до проблемы.
источник

AD

Alex Dem in Django [ru] #STAY HOME
Aquinary
И нет, я не делал никаких фейк и проч до проблемы.
Люди во время столкновения с "непонятками" часто тупят и что-то упускают
Я офк в том числе :)
Я думаю, что что-то да упустил
Жалко базу дропнул, никто теперь так и не узнает правду :)
источник

Н

Никита in Django [ru] #STAY HOME
Andrey
Django_migrations  таблицу никто не трогает?
нет, но я это не исследовал в должной степени. На прод редко что-то заливается.

самое интересное одни и те же миграции, например accounts 0008

я еще не понимаю как правильно делать миграции на прод, мыслями дошел до выгрузки результатов sqlmigrate в файл и пуляния его в базу
источник

A

Andrey in Django [ru] #STAY HOME
Никита
нет, но я это не исследовал в должной степени. На прод редко что-то заливается.

самое интересное одни и те же миграции, например accounts 0008

я еще не понимаю как правильно делать миграции на прод, мыслями дошел до выгрузки результатов sqlmigrate в файл и пуляния его в базу
Миграции на прод просто делать. Достаточно файлы миграций вместе с приложением поставлять и делать migrate перед стартом приложения.
источник

A

Andrey in Django [ru] #STAY HOME
На проде какая СУБД?
источник

Н

Никита in Django [ru] #STAY HOME
Andrey
Миграции на прод просто делать. Достаточно файлы миграций вместе с приложением поставлять и делать migrate перед стартом приложения.
так в процессе разработки сотни миграций будут, разве что squashmigrations делать перед пушем в репозиторий
источник

Н

Никита in Django [ru] #STAY HOME
Andrey
На проде какая СУБД?
mysql
источник

AD

Alex Dem in Django [ru] #STAY HOME
Andrey
Миграции на прод просто делать. Достаточно файлы миграций вместе с приложением поставлять и делать migrate перед стартом приложения.
у меня the same
перед продом миграции проходят тестирование на двух тестовых сервах с эквивалентной базой
а на проде потом эплай со спокойной душой и все
источник