2012-04-21 114 views
6

升级到Django的1.4之后,我现在得到了以下错误消息:Django应用程序将无法升级后运行的Django 1.4

raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e)) 
ImportError: Could not import settings 'settings.py' (Is it on sys.path?): No module named py 

,我读了它可能有一些做的PyDev 2.4如:here,所以我升级了pydev到最新版本2.5。我正在使用eclipse indigo。

我开始看看运行cnofiguration,并注意到django 1.3 egg还在被引用。所以我去了windows/preferences/pydev/interpreter-python,并且在系统PYTHON路径中引用了1.3鸡蛋。

要尝试更正此问题,我删除了现有的python解释器,并重新添加了一个新解释器。我的python是从venv运行的,所以我添加了这个。一个错误出现:

Error message

我不认为这是相关的,但我可以看到/ VENV/lib目录已在系统PYTHONPATH列表出现,而在Windows中的文件夹名为/ VENV/Lib,所以我也加了这个。仍然没有包含新的Django蛋,所以我在“库”窗口下手动添加了这个。

但是,我仍然收到错误消息。

该应用程序从命令行运行良好。

回答

5

经过几个小时尝试不同的事情后发现这一点。

我创建使用的PyDev 2.5只是为了看看会发生什么新的Django项目,我注意到,“Django的设置模块”条目(见下文)是appname.settings。以前我把'settings.py'。我完全删除了条目,这清除了第一个问题。

enter image description here

在此之后,我得到一个“模块APPNAME未找到”的错误,所以我试图把一个空的__init__.py文件在我的应用程序,这似乎工作的根本。

+3

我经历了类似的问题。我已经将'mysite.settings'作为Django设置模块,并且我的Django应用程序运行和调试良好。 – 2012-07-21 10:51:41

+0

很令人沮丧的是,在为导入的项目创建运行配置时,PyDev不询问或从manage.py中的字符串文字读取它(或者至少抱怨,如果您忘记设置它!)。但是,设置这个领域也为我固定。谢谢! – 2013-03-05 14:43:58

1

在virtualenv中,这通常是在安装过程中忘记从基本python安装中添加/ Lib的情况(所以,在PYTHONPATH中搜索时找不到'threading.py'或。

import os 

os.environ['DJANGO_SETTINGS_MODULE'] = '<django_app_folder>.settings' 
os.environ['SERVER_NAME'] = '<name_of_server>' 

<django_app_folder>是包含settings.py文件的文件夹的名称

: 'traceback.py' 等

0

我通过加入以下manage.py解决了这个需要在那里,但我没有发现它关系到它的设置。

0

我有这个问题。我的项目没有PyDev - Django属性,所以这里的另一个解决方案不起作用。我认为这是因为我最初并没有将它创建为Django项目。相反,什么工作是:

  1. 右键单击项目>属性> PyDev的PYTHONPATH>字符串替换变量。
  2. 添加DJANGO_SETTINGS_MODULE它的值命名应该是yourapp.settings变量(或编辑它,如果它已经存在)
相关问题