gpt4 book ai didi

django - 谷歌应用引擎 (python) : ImportError no module named django

转载 作者:行者123 更新时间:2023-12-04 06:56:00 24 4
gpt4 key购买 nike

因此,我尝试将 django 1.1 模板引擎与来自 here 的 Google App Engine Web 应用程序框架一起使用。 .这是在 Ubuntu Jaunty 上,我已经确保 PYTHONPATH 包含 Django-1.1.1 的位置,但是当它尝试执行下面的 use_library() 行时,我收到了这个“ImportError: No module named django”错误。再一次,有人可以帮助我吗?我难住了。

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

最佳答案

想出了以下解决方案:

获取 django 1.1 并将其放在您的项目根目录下。

将一个空文件“non_gae_indicator”添加到您的项目根文件夹。

将 django 和 non_gae_indicator 添加到您的 app.yaml skip_files 元素:

skip_files:
- ^(.*/)?app\.yaml
- ^(.*/)?app\.yml
- ^(.*/)?index\.yaml
- ^(.*/)?index\.yml
- ^(.*/)?#.*#
- ^(.*/)?.*~
- ^(.*/)?.*\.py[co]
- ^(.*/)?.*/RCS/.*
- ^(.*/)?\..*
- ^(.*/)?.*\.bak$
- ^django
- ^non_gae_indicator

现在我们有一种方法可以判断我们是在 GAE-sdk 下运行还是实时运行 - 因为当我们处于实时状态时 non_gae_indicator 将不可用。

所以在 main.py 你可以这样做:
if not os.path.exists(os.path.abspath(os.path.dirname(__file__)) + '/non_gae_indicator'):
# GAE
from google.appengine.dist import use_library
use_library('django', '1.1')
else:
# Not GAE - Add our django package to the path
sys.path.insert(0, os.path.abspath(os.path.dirname(__file__)) + '/django')

您应该使用 --allow_skipped_files 标志运行您的本地 SDK 服务器(否则在检查跳过的文件时,它们似乎不存在 - 服务器控制台会对此发出警告)。

关于django - 谷歌应用引擎 (python) : ImportError no module named django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2568257/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com