As of Django 1.7+, built-in migrations support, allows for database schema migrations that preserve data. That’s probably a better approach than the solution below.
Another option, not requiring additional apps, is to use the built in
manage.py functions to export your data, clear the database and restore the exported data.
The methods below will update the database tables for your app, but will completely destroy any data that existed in those tables. If the changes you made to your app model do not break your old schema (for instance, you added a new, optional field) you can simply dump the data before and reload it afterwards, like so:
Django 1.4.15 and earlier
python manage.py dumpdata <your_app> > temp_data.json python manage.py reset <your_app> python manage.py loaddata temp_data.json
Django 1.5 and newer
python manage.py dumpdata <your_app> > temp_data.json python manage.py sqlclear <your_app> | python manage.py dbshell python manage.py syncdb python manage.py loaddata temp_data.json
reset command was deprecated and then removed in Django 1.5)