Google App Engine Python - передать ProjectID в клиентскую библиотеку NDB?

Я новичок в Google App Engine. Я создаю приложение в стандартной среде и хотел бы знать, как передать ProjectID в клиентскую библиотеку Python NDB таким же образом:

# Imports the Google Cloud client library
from google.cloud import datastore

# Instantiates a client
datastore_client = datastore.Client('my_project_id')

но используя ndb:

from google.appengine.ext import ndb

Есть ли какой-либо связанный метод в библиотеке или его можно просто включить в файл .yaml ?:

application: "my_project_id"
version: 1

person Finfa811    schedule 13.11.2017    source источник


Ответы (1)


Если вы используете стандарт GAE, вам не нужно использовать from google.cloud import datastore. Эта библиотека позволяет людям получать доступ к хранилищу данных из других сред, таких как GCE. Хранилище данных встроено в стандарт GAE через NDB.

Для стандарта GAE имя приложения не требуется в коде, даже в файле app.yaml. Имя приложения указывается при развертывании с помощью команды gcloud.

Старому инструменту с графическим интерфейсом требуется имя приложения в app.yaml, но текущие gcloud инструменты его больше не используют.

person gaefan    schedule 13.11.2017
comment
Спасибо. Да я только что понял, что с cloudstorage то же самое. Мне не нужно использовать from google.cloud import storage, пока я использую GAE, поскольку он встроен непосредственно в App Engine. - person Finfa811; 14.11.2017