我试图根据this document将我的Django
应用部署到Google App Engine
(GAE)。我创建并配置了一个Google Cloud SQL
实例,如该文档中所述。我使用PyCharm
作为开发环境,并创建了一个支持Django的GAE项目。Google App Engine和Django支持
我配置了一个本地服务器来指向GAE服务器。当我尝试推出在PyCharm的GAE本地服务器,它是提高配置不当的数据库例外SETTINGS.PY
:
google.appengine.ext.django.backends.rdbms' isn't an available database backend
我可以/Library/Python/2.7/site-packages
从堆栈跟踪本地服务器使用的Django的版本看,而我假定它应该使用/usr/local/google_appengine/lib
中的那个。
什么是解决这个给出的最好的方式,我有其他的Django项目,并应在/Library/Python/2.7/site-packages
使用Django的版本?如果我修改我的PYTHONPATH
以包含GAO版本的Django,那么我的所有项目是不是会引用该版本的Django?
编辑:更确切地说,在GAE本地服务器启动就好了,但是当我做了syncdb
任务来更新我的数据库抛出提到的堆栈跟踪。
编辑2:在根据Python解释PyCharm设置,我发现修改的路径的可能性,并且增加了的Django 1.4版本与GAE SDK分布。当我开始在GAE开发服务器,我可以清楚地看到它使用来自GAE SDK Django的版本,但它仍然崩溃的数据库定义:尝试部署时我遇到了问题:
Error was: No module named google.appengine.ext.django.backends.rdbms.base
编辑3使用教程的现有Django应用程序。见this separate question。
你是怎么安装django-appengine的?最好的方法是使用教程 –
@SamueleMattiuzzo中列出的修改过的django-nonrel包:Django现在预包装GAE SDK。我跟踪了2012年12月14日更新的Google Developers链接文档,因此应反映最近的状态。 Django的nonrel版本是针对BigData的;该文档中描述的版本应支持关系型Google云SQL。 – Roger
你有本地MySQL运行吗?换句话说,当您运行SDK时,是否收到此消息“WARNING 2013-01-04 01:58:04,612 rdbms_mysqldb.py:74] rdbms API不可用,因为无法加载MySQLdb库。”? – Sologoub