没有名为的模块

0 投票
1 回答
696 浏览
提问于 2025-04-17 12:53

我正在为谷歌应用引擎写Python代码。当我编译我的项目时,没有任何错误。但当我在服务器上使用它时,出现了import的错误。

比如,我是这样从另一个类中导入一个方法的:

from src.receiver.receive_smth import add_to_smth_db

我遇到的错误看起来像这样:

<type 'exceptions.ImportError'>: No module named src.receiver.receive_smth

奇怪的是,当我自动导入这个依赖时,得到的结果是:

from receiver.receive_smth import add_to_smth_db

(注意接收方前面缺少src),但是我的项目还是标记了错误。

谷歌应用引擎的导入和Django工作得很好,只是有一个警告:

你正在使用默认的Django版本(0.96)。在不久的将来,默认的Django版本将在应用引擎的更新中改变。

[更新]

我注意到我的包里没有__init__.py脚本(我在Windows上工作)。有没有什么想法可以正确配置包?

关于Django版本的警告已修复

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
from google.appengine.dist import use_library
use_library('django', '1.1')

1 个回答

0

这是因为你的开发环境(IDE)可以把你的项目添加到你系统的Python路径中。或者框架在你设置项目的时候也可以做到这一点。试着使用相对导入,了解更多可以查看这个链接:http://www.python.org/dev/peps/pep-0328/

撰写回答