Reputation: 753
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'
Upvotes: 15
Views: 4666
Reputation: 2949
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.
Upvotes: 10
Reputation: 3466
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
Upvotes: 2
Reputation: 15371
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.
Upvotes: 11