2013-01-03 15 views
5

Quando eseguo ./manage.py syncdb non è sincronizzato (usa le migrazioni). Tuttavia, quando ho eseguitoDjango e sud: utilizzando sud, syncdb mostra myapp come 'non sincronizzato (usa le migrazioni)'

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

Come da this thread, ho provato a ripristinare sud per risolvere il problema. Ecco quello che ho fatto:

$ 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) 

Esecuzione schemamigration> migrare ha lo stesso effetto di prima (nulla, ancora non registrandosi come sincronizzati). Tra i lati positivi, l'app sembra ancora funzionare bene, sono solo preoccupato che questo potrebbe causare problemi lungo la strada. Qualche idea su cosa sta succedendo e su come posso risolverlo? Questo è davvero un problema? Sto usando SQLite3 e Django 1.4.2 se questo aiuta.

+1

Modo più semplice per testare: eliminare il db locale. Inizia fresco. Cosa dice './manage.py syncdb --migrate'? –

+0

Si dice che tutto è sincronizzato, ad eccezione di myapp che viene migrato. Penso che la mia risposta qui sotto sia corretta. Grazie per l'aiuto! – Xephryous

+0

Il comando nel mio commento precedente dovrebbe sia sincronizzare il db per le app non gestite, sia migrare per le app gestite. –

risposta

13

Questo potrebbe non essere un problema, dopo tutto. Ho appena trovato this bit nei documenti del Sud, il che sembra indicare che il Sud prende il sopravvento su quella funzionalità. South "fa syncdb funziona solo su un sottoinsieme delle app - quelle senza migrazioni." vale a dire che syncdb mostra myapp come non sincronizzato perché sud lo gestisce separatamente.

Appendo vergognoso alla mia testa sud-noob.

Problemi correlati