我正在尝试使用Google App Engine部署Django示例项目。它抛出了问题标题中提到的错误。 本地应用程序运行良好。在requirements.txt中,我将mysql-python版本更改为1.2.4和1.2.5都不起作用。我得到500错误。 我在SO上检查了很多关于同一个问题的答案,但似乎没有任何效果 我的app.yaml
# [START django_app]
version: 1
runtime: python27
api_version: 1
threadsafe: yes
handlers:
- url: /static
static_dir: static/
- url: .*
script: mysite.wsgi.application
# Only pure Python libraries can be vendored
# Python libraries that use C extensions can
# only be included if they are libraries available
# as part of the AppEngine SDk
libraries:
- name: MySQLdb
version: "latest"
# [END django_app]
我的appengine_config:
# [START vendor]
from google.appengine.ext import vendor
vendor.add('lib')
# [END vendor]
答案 0 :(得分:1)
1.2.4b4在撰写本文时确实是应用引擎在生产中提供的最新MySQLdb版本。您没有提供有关您的设置的详细信息,但是如果您在这个requirements.txt的虚拟环境中进行安装,则很可能MySQLdb.py文件是您要上传到GAE生产的Python文件中的一部分:确保< em> not 这样做,以便import MySQLdb
将获得GAE本身提供的版本(当然,在你的app.yaml中有适当的规范)。
在本地,使用1.2.4开发,以避免意外使用1.2.4未提供的1.2.5功能;但是,最重要的是,不最终会导致您上传到应用引擎的目录树中的MySQLdb.py
文件。
如果您提供app.yaml和您正在上传的目录树的相关详细信息,您可以让我们提供更多,更具体的帮助和信息。根据您在问题中提供的非常少的信息,这是我们迄今为止所能做的最好的。