Problems Adding Django South Tool

717 views
Skip to first unread message

hank23

unread,
Feb 17, 2011, 10:20:33 AM2/17/11
to Django users
I downloaded and installed Django's South DB tool apparently ok
because after installing it I went into the shell and was able to
import South ok with no errors. So then I added it to the end of the
list of installed apps and also ran syncdb. When I ran syncdb I didn't
get anything that looked like an error, however I did get a list of
items that it tried to sync and a message that looked like this:

Syncing...
No fixtures found.

Synced:
> django.contrib.auth
> django.contrib.contenttypes
> django.contrib.sessions
> django.contrib.sites
> django.contrib.messages
> django.contrib.admin
> polls
> south

Not synced (use migrations):
-
(use ./manage.py migrate to migrate these)

Then when I started the South tutorial and ran:

python manage.py startapp southtut

which created the new folder in my mysite directory for the new
southtut app. Then when I tried to run the schemamigration command
like this:

python manage.py schemamigration southtut --initial

I ultimately got this error:

django.core.exceptions.Improperlyconfigured: App with label southtut
could not be found


So since I think I followed all of the steps properly in the install
and then again also at the start of the first part of the South
tutorial what do I do now? Did I miss something somewhere? Thanks in
advance for the help.


Michael

unread,
Feb 17, 2011, 10:44:54 AM2/17/11
to django...@googlegroups.com
After you create the southtut app, you need to add it to
settings.INSTALLED_APPS in order for Django to know about it. If Django
doesn't know about it, then South doesn't know about it.

--
Michael <mhal...@gmail.com>

hank23

unread,
Feb 17, 2011, 11:26:13 AM2/17/11
to Django users
Ok I added the southtut app to my installed apps after creating its
folder, but now when I enter this command:

python manage.py schemamigration southtut --initial

I get this:

Unknown command: 'schemamigration'

Which makes me wonder if I really do have South completely installed
ok, or if I need to be in a different directory to be able to execurte
it. Currently I'm trying to execute it I'm in the mysite directory
which has my settings.py, my templates folder and my app. folders. So
maybe I should where should I before I try to run the schemamigration
command? Any thoughts?

On Feb 17, 9:44 am, Michael <mhall...@gmail.com> wrote:
> After you create the southtut app, you need to add it to
> settings.INSTALLED_APPS in order for Django to know about it.  If Django
> doesn't know about it, then South doesn't know about it.
>
> --
> Michael <mhall...@gmail.com>
> > advance for the help.- Hide quoted text -
>
> - Show quoted text -

Shawn Milochik

unread,
Feb 17, 2011, 1:07:55 PM2/17/11
to django...@googlegroups.com
On Thu, Feb 17, 2011 at 11:26 AM, hank23 <hvers...@stchas.edu> wrote:
> Ok I added the southtut app to my installed apps after creating its
> folder, but now when I enter this command:
>
> python manage.py schemamigration southtut --initial
>
> I get this:
>
> Unknown command: 'schemamigration'

Same answer as before; you need to add south itself to your INSTALLED_APPS.

If that doesn't work (or you're just curious), open a Python or
iPython command line and type 'import south.' If it works, you've
probably installed South properly.

Shawn

hank23

unread,
Feb 17, 2011, 2:34:58 PM2/17/11
to Django users
Thanks for the help. I found the problem and now I have my migration
file(s) and I'm ready to migrate.

On Feb 17, 12:07 pm, Shawn Milochik <sh...@milochik.com> wrote:

Brandon Foster

unread,
Jan 26, 2014, 12:21:50 AM1/26/14
to django...@googlegroups.com
(note: I can type ./manage.py instead of python manage.py because I changed the mode for the manage.py file by doing chmod +x manage.py to make it executable. Also, I didn't type the dollar sign $, that only indicates the command prompt)

For me, I realized I had typed the following (notice the trailing slash) which did NOT work:

$ ./manage.py migrate southtut/

 After I entered the command without the trailing slash, it DID work:

$ ./manage.py migrate southtut

So, it seems like all the steps to take are the following:

1) install south (for example, pip install south or whatever installation method you prefer http://south.readthedocs.org/en/latest/installation.html)
2) add south to the INSTALLED_APPS tuple in settings.py
3) run ./manage.py syncdb
4) create the southtut app by running $ ./manage.py startapp southtut
5) run $ ./manage.py schemamigration southtut --initial
6) run $ ./manage.py migrate southtut


On Tuesday, April 23, 2013 9:09:46 PM UTC-4, Ashley Snelgrove wrote:
I'm guessing that southtut also needed to be added to the list of INSTALLED_APPS. 

On Thursday, August 23, 2012 8:57:58 AM UTC-6, Fyodor Wolf wrote:
What was your Solution???
Reply all
Reply to author
Forward
0 new messages