Django "You have unapplied migrations". Which ones?

after using this command :

python manage.py migrate

you get the same error: You have un-applied migrations;

simple way to solve this error is to go to your project directory search for your database directory that is created after command

python manage.py migrate

in my case db created was db.sqlite3 just delete that file and go to your terminal and use manage.py makemigrations followed by manage.py migrate .

this worked for me . All the best


A minor modification on Kevin's answer using grep, to only show unapplied migrations:

Django 1.7:

python manage.py migrate --list | grep -v '\[X\]'

Django 1.8 and above:

python manage.py showmigrations --list | grep -v '\[X\]'

Edited after ngoue's comment. Nice catch. Thanks for pointing it out.


If you're on 1.7, use python manage.py migrate --list. (docs)

If you're on 1.8 or above, use python manage.py showmigrations --list. (docs)

In either case, there will be an [X] to show which migrations have been applied.


You can see a list of just the unapplied migrations with the --plan option of the migrate command:

python manage.py migrate --plan

It was introduced in Django 2.2 and is documented here.