Я использую Mezzanine (Django 1.10), поэтому не вижу "db.sqlite3
"
Я искал вопросы, похожие на мои, и большинство предложенных решений оказались неэффективными.
Я создал новую модель, а позже решил добавить новое поле. Я сделал «python manage.py makemigrations», и когда я посмотрел на папку с миграциями, она там; новое поле существует. Теперь, когда я запустил приложение и заглянул в администратора, оно выдало мне ошибку, в которой говорилось: «Такого столбца не существует». Поэтому, я думаю, моя база данных не синхронизируется с миграциями, которые у меня есть.
Вот что я сделал: 1. удалил все в папке миграции и заново создал "init.py".
1.1 побежал "python manage.py makemigrations <app_name>
"
1.2 побежал "python manage.py migrate <app_name>
"
1.3 побежал "python manage.py runserver
"
На самом деле я могу просто переименовать свою модель в другое имя с теми же полями, однако иногда Django выдает ошибку, например «такой таблицы не существует». Это также было бы довольно утомительно, потому что, если я переименую свою модель, мне придется переименовывать ее в каждом файле, в который я импортировал модель, например, в admin.py, forms.py, views.py и т. д.
Я слышал о South, но это не применимо к Django 1.10.
Пожалуйста помоги. Спасибо!