ImportError:谷歌应用引擎中没有名为****的模块错误

时间:2013-02-19 10:33:30

标签: python google-app-engine google-cloud-sql

我正在谷歌应用引擎中开发我的应用程序,现在我使用的是Google Cloud SQL。它完全在localhost运行,但是当我将我的应用程序部署到服务器时,它会给我以下错误。

ImportError: No module named MySQLdb

后来我将MySQLdb包复制到应用程序目录。现在它给了我错误

ImportError: No module named _mysql.

我在这里做错了什么,任何准则?

3 个答案:

答案 0 :(得分:7)

您的app.yaml中可能缺少MySQLdb。此库应该在那里,以便Google App Engine为您的实例加载它。希望这会有所帮助。

libraries:
- name: MySQLdb
  version: "latest"

答案 1 :(得分:0)

查看完全没有这样做的文档。

Building an application with a local MySQL instance

from google.appengine.api import rdbms

CLOUDSQL_INSTANCE = ''
DATABASE_NAME = 'guestbook'
USER_NAME = 'username'
PASSWORD = 'password'


def get_connection():
    return rdbms.connect(instance=CLOUDSQL_INSTANCE, database=DATABASE_NAME,
                         user=USER_NAME, password=PASSWORD, charset='utf8')

答案 2 :(得分:0)

tutorial让我的应用程序最终正常工作......

我做了什么:我创建了一个非常基本的项目(只有一个带有一个模型的简单应用程序),并按照上面的教程使其在我的开发环境和GAE中运行。然后将我的代码从旧的(非GAE)项目迁移到新项目。一切都很好。

坏消息:在GAE和Cloud SQL上正确部署新项目仍需要一些努力。我从来没有设法让它一气呵成。你必须仔细检查GAE日志。