Django 1.7 has built-in database migration mechanizm. However, I'd like to run South migrations for the ols third-party django apps.
I failed to to 'syncdb' management command with Django 1.7 in order to create South models:
/south/management/commands/syncdb.py", line 82, in handle_noargs
old_app_store, cache.app_store = cache.app_store, SortedDict([
AttributeError: 'Apps' object has no attribute 'app_store'
If you started a project on Django 1.6 but have upgraded to Django 1.7, you may not see this error immediately. But if you then do a fresh checkout and db build for the project, this mysterious error will crop up.
The solution is to remove South from your INSTALLED_APPS
(and likely pip's requirements.txt
as well). You don't need them anymore.
On official South site:
South will not work with Django 1.7; it supports only versions 1.4, 1.5 and 1.6.
The only solution I can see is to create django 1.7 for third-party applications within your project using MIGRATION_MODULES
setting. When these third-party applications will supply django 1.7 migrations. you should remove your migrations and do migrate --fake
with application migrations.
https://docs.djangoproject.com/en/1.7/topics/migrations/#upgrading-from-south
This is part of the stable 1.7 release. You should utilise this process if you're upgrading from 1.6 to 1.7
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With