wiki:ConvertingAnApp

Version 2 (modified by andrew, 6 years ago) (diff)

--

Converting An App

Converting an app to use South is very easy:

  • Edit your settings.py and put 'south' into INSTALLED_APPS (assuming you've installed it to the right place)
  • Run ./manage.py syncdb to load the South table into the database. Note that syncdb looks different now - South modifies it.
  • Run ./manage.py startmigration myapp --initial - this will create a migrations directory and a first migration that will create the schema you currently have in models.py.
  • Run ./manage.py migrate myapp to use South to make the tables. If you've already syncdb'd this app, you can run ./manage.py migrate myapp --fake to trick South into thinking the migrations are already applied (the tables are created, so technically they are, it's just that South didn't make them so it needs informing)

That's it. It's as painless as we could make it, and now your schema changes will be a breeze. Take a look at the documentation for more on South's workings.