首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法从google.cloud导入数据存储区

无法从google.cloud导入数据存储区
EN

Stack Overflow用户
提问于 2017-11-19 23:57:04
回答 2查看 5.7K关注 0票数 1

我正在尝试使用Flask和Google Datastore创建一个基本的web应用程序,使自己成为Google Cloud的一员。然而,当我部署我的应用程序时,我得到了一个错误500,详细信息是Python不能导入数据存储:ImportError: No module named cloud

这是我的app.yaml

代码语言:javascript
运行
复制
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如下所示:

代码语言:javascript
运行
复制
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如下:

代码语言:javascript
运行
复制
Flask
google-cloud
click

当我部署我的应用程序(使用gcloud app deploy)并访问我的站点时,我得到了错误500。

我不明白为什么我不能使用from google.cloud import datastore,因为谷歌在他们的教程中就是这么做的……我一定是遗漏了什么,但我找不到是什么。

任何帮助都将不胜感激。

EN

回答 2

Stack Overflow用户

发布于 2017-11-20 22:11:19

来自Installing the client library

代码语言:javascript
运行
复制
pip install --upgrade google-cloud-datastore

您需要的(与导入语句匹配的)客户端库是google-cloud-datastore,但是您的requirements.txt文件中没有列出该库。

附注:你的app.yaml文件表明你的应用程序是一个标准的env GAE应用程序,为此你有一个优化的Google Datastore NDB Client Library库可用,并且已经包含在你的SDK中(如果你没有具体的理由选择通用的)。

票数 5
EN

Stack Overflow用户

发布于 2017-11-21 00:20:54

您没有指定env: flex,因此您使用的是标准环境。它被描述为flex yaml和here,它不会出现在标准的yaml中。

这一点很重要,因为标准环境不支持google-cloud。google-cloud’s repository

这些库目前不能在Google App Engine Standard上运行

Dan Cornilescu提到的关于NDB Client的链接是一个标准环境的官方解决方案,在官方文档中可以找到几个例子:

https://github.com/GoogleCloudPlatform/python-docs-samples/tree/master/appengine/standard/ndbhttps://github.com/GoogleCloudPlatform/python-docs-samples/tree/master/appengine/standard/multitenancy

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47378833

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档