Django Heroku Error "Your models have changes that are not yet reflected in a migration"

django, django-1.7, django-migrations, heroku, python

Solution

You need to first create the migrations locally, add them to your repository, commit the files with the new migrations and then push to heroku.

The sequence is something like this:

1. (add/modify some someapp/models.py)
2. python manage.py makemigrations someapp
3. python manage.py migrate
4. git add someapp/migrations/*.py (to add the new migration file)
5. git commit -m "added migration for app someapp"
6. git push heroku
7. heroku run python manage.py migrate

Problem

I recently added a model to my app (UserProfile) and when I pushed the changes to Heroku, I think I accidentally ran `heroku run python manage.py makemigrations`. Now when I try to run `heroku run python manage.py migrate` I get the error below ``` (leaguemaster) benjamins-mbp-2:leaguemaster Ben$ heroku run python manage.py migrate Running `python manage.py migrate` attached to terminal... up, run.1357 Operations to perform: Synchronize unmigrated apps: allauth Apply all migrations: auth, admin, socialaccount, sites, accounts, account, contenttypes, sessions, leagueapp Synchronizing apps without migrations: Creating tables... Installing custom SQL... Installing indexes... Running migrations: No migrations to apply. Your models have changes that are not yet reflected in a migration, and so won't be applied. Run 'manage.py makemigrations' to make new migrations, and then re-run 'manage.py migrate' to apply them. ``` How do I fix this? Please help!

Original source