@zkweb

Как создать новую таблицу в БД — Django?

В джанго новичок. Скажите, пожалуйста, нужно сделать новую модель в приложении + таблицы в БД.
В model.py указал новый класс модели, с полями и т.д

Сам вопрос: обязательно всегда выполнять makemigrations и далее делать migrate?
Как можно быстро обьявить django о новой таблице и модели?

Т.е у приложения уже есть другие таблицы, и при вызове migrate он ругается.
django.db.utils.ProgrammingError: relation "таблица" already exists
  • Вопрос задан
  • 1547 просмотров
Пригласить эксперта
Ответы на вопрос 1
astrikovd
@astrikovd
Python Developer
Сам вопрос: обязательно всегда выполнять makemigrations и далее делать migrate?

Да, начиная, насколько я помню, с версии 1.7 в Django таблицы создаются именно так.

python manage.py makemigrations <app_name> 
python manage.py migrate <app_name>


Т.е у приложения уже есть другие таблицы, и при вызове migrate он ругается.
django.db.utils.ProgrammingError: relation "таблица" already exists


Перед внесением изменений в модель сделайте makemigrations и migrate --fake. Потом внесите изменения в модель, снова makemigrations и migrate, уже без флага --fake. Таблица будет изменена.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы