将Python Django项目1.3升级到1.5

5

我目前有一个使用Django 1.3的Python项目,运行在Mountain Lion操作系统上,现在想要升级到Django 1.5。但是当我尝试执行python manage.py runserver时,出现了以下错误:

Error: Can't find the file 'settings.py' in the directory containing 'manage.py'. It appears you've customized things. You'll have to run django-admin.py, passing it your settings module. (If the file settings.py does indeed exist, it's causing an ImportError somehow.)

我意识到项目结构可能有所不同,是否有任何方法可以将1.3项目转换或升级为1.5项目呢?

2个回答

6

OP所遇到的特定错误不应该出现在Django 1.5中。发布说明中说:“(旧式的manage.py将继续像以前一样工作,直到Django 1.6。在1.5中,它将引发DeprecationWarning)”。 - gertvdijk
@gertvdijk 我也是这么想的。但实际上,问题是关于升级而不是修复错误。无论如何,在升级过程中,OP都必须重新构建他的项目,很可能错误会消失。 - kirelagin
顺便说一下,我猜他已经修改了项目结构(即移动了settings.py),但还没有更新manage.py - kirelagin

1
为了详细说明kirelagin所提到的内容,项目结构和布局在1.4中已经发生改变,因此您需要在设置中反映这一点。您可以在发布文档中看到相关说明:

Django 1.4使用更新的默认项目布局和manage.py文件以进行startproject管理命令。这些修复了以前manage.py处理Python导入路径时出现的双重导入问题,使开发环境和生产环境之间转移麻烦,并解决了其他难以调试的路径问题。

这意味着Django期望您的settings.py存在冲突。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接