在Django中安装South会导致500错误

时间:2012-12-09 19:41:27

标签: python django django-south

我正在尝试在Django中安装South。我正在做相对简单的步骤。

我在使用Virtualenv的虚拟环境中运行Dreamhost(使用Passenger WSGI)。虚拟环境使用Python 2.7.3和Django 1.4.2。

首先,我在具有manage.py文件的同一目录中执行easy_install South。 (v 0.7.6-py2.7)

然后我进入了我唯一的settings.py,并使INSTALLED_APPS看起来像这样:

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.admin',
    'blog',
    'South', # i tried lowercase 's' here too, no difference
)

然后我运行了pkill pyton,因此更改启动。我刷新了我的网站,我得到了500内部服务器错误。如果我从INSTALLED_APPS和pkill python中删除'South'并再次刷新,则错误就会消失。

我可以使用South工具执行迁移和所有这些操作。一切都在终端工作。就在我在浏览器中加载网站时,我收到500错误。从已安装的应用程序中删除南部可以消除错误。

我做错了什么?

2 个答案:

答案 0 :(得分:0)

要调试它,首先在Django设置中打开debug = True。

南边是'南',有一个较低的s。

要检查它是否正常工作,您可以

./manage.py shell
>> import south

这样你就会得到一个错误的python shell,你会看到发生了什么。

答案 1 :(得分:0)

所以我能够让它运转起来。这是一个奇怪的修复,但它的工作原理。

我使用easy_install安装South,并将其放在以下目录中:

/env/lib/python2.7/site-packages/South-0.7.6-py2.7.egg

如果你打开那个鸡蛋文件夹,你会看到另一个名为south的目录。

我所做的就是将south文件夹中的一个目录移到site-packages

就是这样。它刚刚开始工作。