【发布时间】:2016-04-03 13:51:45
【问题描述】:
我正在尝试将 Openshift 托管的 Django 网站转移到 Google App Engine。我想将它连接到现有的 PostgreSQL 数据库。但是,我在Google's documentation 中找到了这个:
一小部分原生 C python 模块和原生 C python 模块的子集不适用于 Google App Engine。禁用的模块分为以下几类:(...)
请注意,使用上述任何功能的第三方软件包将无法与 Google App Engine 一起使用(例如 PostgreSQL 等软件包)。
我的本地 GAE 服务器产生了以下错误:
配置不当:加载 psycopg2 模块时出错:没有名为 psycopg2._psycopg 的模块
Further research 似乎表明此错误是由于 GAE 的限制引起的,而不是由于配置错误。当然,必须有一些合理的方式将我的 Django 网站与外部托管的 PostgreSQL 服务器连接起来。我有哪些选择?
编辑:为了澄清,我想我需要一个纯 Python 替代 psycopg2 与 Django 一起工作。换句话说,它还应该实现一个我可以使用的 Django 数据库后端。
【问题讨论】:
-
你看过
gcloud吗? googlecloudplatform.github.io/gcloud-python/stable 这是一个用于与 Datastore 交互的 API,您可以使用它来将内容从 Django 应用程序迁移到 App Engine 应用程序。 (我不确定这是否适用于你想要完成的事情,但我想我还是会让你知道哈哈) -
我想将我的数据库托管在它当前所在的位置,所以我需要一种方法让 Django 连接到我现有的 PostgreSQL 数据库。我不能的原因是因为 Django (
psycopg2) 中的标准 PostgreSQL 连接器不是纯 Python。
标签: python django postgresql google-app-engine