Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Django and South: using south makes syncdb show myapp as 'not synced (use migrations)'

When I run ./manage.py syncdb it says not synced (use migrations). However, when I run

$ ./manage.py schemamigration myapp --auto
Nothing seems to have changed
$ ./manage.py migrate
blah blah, nothing to migrate

As per this thread, I tried resetting south to fix the problem. Here's what I did:

$ rm -r appname/migrations/ 
$ ./manage.py reset south
$ ./manage.py syncdb
    (at this point it shows all apps as synced)
$ ./manage.py convert_to_south myapp
blah blah, App 'blog' converted.
$ ./manage.py syncdb
    (at this point it shows myapp as not synced)

Running schemamigration > migrate has the same effect as before (nothing, still not registering as synced). On the plus side, the app still seems to work fine, I'm just worried this could cause problems down the road. Any idea what's going on and how I can fix it? Is this even really a problem? I'm using SQLite3 and Django 1.4.2 if that helps.

like image 553
Xephryous Avatar asked Jan 03 '13 20:01

Xephryous


1 Answers

This might not be a problem, after all. I just found this bit in the South docs which seems to indicate that South takes over that functionality. South "makes syncdb only work on a subset of the apps - those without migrations." ie it's okay for syncdb to show myapp as not synced because south is handling it separately.

I hang my south-noob head in shame.

like image 172
Xephryous Avatar answered Sep 30 '22 17:09

Xephryous