想出了以下解决方案:
获取的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服务器(或者跳过的文件会出现检查时他们不存在 - 的服务器控制台给出了一个警告)。