2

I'm in the classic position of the novice coder, where in hindsight I'd do many things differently if I were starting my project over. I used South relatively early in my project, ran into some problems due to my lack of knowledge, and abandoned it, removing it from installed apps, and syncing the DB. I then learned enough SQL to make the basic changes I needed, and have made many small changes since.

I'd like to take another stab at South to see if I could reorganize my code to reflect better coding practices. I've searched the South site, with help from stackoverflow, and found a guide from the creator for removing all traces of South and starting again-- remove from installed apps, use the manage.py tool to reset the south table in the db, and recursively delete the migrations subdirectories. But even though I've not been using south for a long time now (it hasn't been in my installed apps), this left my DB in an nonfunctional state-- not really sure why since I didn't get any error messages.

Can anyone explain to a database novice what lingering impact south would have had on my database?

Profane
  • 1,128
  • 8
  • 13

1 Answers1

3

South creates a table in your database to track migrations that have been applied. The table is south_migrationhistory. You probably want to either drop the table (and re-sync your db) or delete it's contents.

I imagine at the moment south thinks that it's applied migration that it hasn't, which may be confusing things.

John Montgomery
  • 8,868
  • 4
  • 33
  • 43
  • Would this not be wiped out by python manage.py reset south? The table appears to be gone in the postgresql helper-gui. Appreciate the answer regardless; it's the first time someone has answered one of my questions. – Profane Apr 20 '11 at 14:39
  • Your answer was correct; found the offending table via the commandline (never trust a gui). Thanks very much. – Profane Apr 20 '11 at 15:42
  • Was finally able to upvote you for this. Thanks again for helping me. – Profane May 27 '11 at 11:08