I am trying to refactor a Django project. I renamed a couple apps and added a new one, as well as shuffled some models around. I want to clear my database and migrations and sta
Delete database and delete migration files (.py
and .pyc
) in migrations
directory of your app (don't delete __init__.py
file). Then run python manage.py makemigrations app
and python manage.py migrate
.
For me, just
python manage.py flush
deleted old db contents, so i was able to create records anew in Django 2.1.4.
Don't forget to create new superuser:
python manage.py createsuperuser
I had the same issue, using Django 1.10, here is what I did, I deleted the database sqlite file, deleted the pycache folders inside each of the apps, deleted all files inside the migrations folder for each app , except the init.py file, and then ran python manage.py makemigrations
and python manage.py migrate
. Also note that because you deleted the database you will have to create a new superuser using python manage.py createsuperuser
. Hope this helps
Do not delete your database file!
Its correct to delete migration files and then run flush but deleting sqlite database file is wrong. This worked to me every time. If you are using other database, it will save you a lot of work and preparations.
This may help you if you want to clear sqlite3 DB follow these steps.
python/python3 manage.py migrate
python/python3 manage.py makemigrations
python/python3 manage.py migrate
python/python3 manage.py createsuperuser
. you should use new name not old user name