我正在尝试使用 Flask 和 Google Datastore 创建一个基本的网络应用程序,以便让自己成为 Google Cloud。但是,当我部署我的应用程序时,我收到错误 500,详细信息是 Python 无法导入数据存储:ImportError: No module named cloud。
这是我的app.yaml:
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: .*
script: main.app
libraries:
- name: jinja2
version: "2.6"
- name: markupsafe
version: "0.15"
- name: flask
version: 0.12
我的 main.py 开始如下:
from __future__ import absolute_import
# Standard imports
import time
import logging
import json
import threading
# Flask framework
from flask import request
from flask import Flask
# Google Cloud features
from google.cloud import datastore
# the following replaces requests
from google.appengine.api import urlfetch
最后,我的requirements.txt如下:
Flask
google-cloud
click
当我部署我的应用程序(使用 gcloud app deploy)并访问我的站点时,我收到错误 500。
我不明白为什么我不能使用 from google.cloud import datastore 因为这是谷歌在他们的教程中所做的......我一定是遗漏了什么但我找不到什么.
如有任何帮助,我们将不胜感激。
请您参考如下方法:
来自 Installing the client library :
pip install --upgrade google-cloud-datastore
您需要的客户端库(匹配您的导入语句)是 google-cloud-datastore,但您没有在 requirements.txt 文件中列出.
旁注:您的 app.yaml 文件表明您的应用程序是标准的 env GAE 应用程序,您为此优化了 Google Datastore NDB Client Library库可用,已包含在您的 SDK 中(如果您没有特定原因选择通用库)。
