Что-то должно быть очень, очень неправильно. Это не может быть так сложно.
Я пытаюсь удалить таблицы в моем приложении Django, которое сделано из ORM sqlite3 по умолчанию.
Каждый раз, когда я хочу $ python manage.py makemigrations
, Джанго спрашивает меня, как я хочу обработать новое поле в уже существующих строках, и я ненавижу его.
Итак, я хочу просто удалить все таблицы из моей модели 'Post' и выполнить новые миграции.
Это легко сделать
$ rails db drop; rails db migrate
на Rails, но я не могу найти никакой похвалы, эквивалентной этому на Django.
Я гуглил и нашел коммент как $ python manage.py flush
, но он эффективно сбрасывает все мои столы, даже мой Суперпользователь.
Я не хочу этого и хочу удалить таблицу из определенного приложения.
В некоторых сообщениях даже говорилось, что мне нужно вручную удалить все файлы миграции и db.sqlite3
, но я уверен, что есть другой способ.
Еще одна альтернатива, о которой я думаю, - это открыть manage.py
оболочку и удалить их, как показано ниже (что я узнал из руководства по официальной документации)
$ python manage.py shell
>> from posts.models import Post
>> Post.objects.all().delete()
Я надеюсь, что это не так, как должно быть.