- 确保您在使用正确的实体和键名或ID来获取记录。实体类和键名或ID在代码中应被正确定义。
例如:
from google.cloud import datastore
# 实体类定义
class Customer(datastore.Entity):
first_name = datastore.StringProperty()
last_name = datastore.StringProperty()
age = datastore.IntegerProperty()
# 获取实体记录
client = datastore.Client()
customer_key = client.key('Customer', '12345')
customer = client.get(customer_key)
print(customer)
- 确保您已正确设置DataStore的身份验证和访问权限。在GCP控制台中,您需要启用DataStore API和创建一个服务帐号,并为其分配适当的角色以设置访问权限。在代码中,您需要按照文档指示来设置身份验证。
例如:
from google.oauth2 import service_account
from google.cloud import datastore
# 设置身份验证
credentials = service_account.Credentials.from_service_account_file(
'path/to/keyfile.json')
# 获取实体记录
client = datastore.Client(project='your-project-id', credentials=credentials)
customer_key = client.key('Customer', '12345')
customer = client.get(customer_key)
print(customer)
- 确保您访问的记录确实存在于GCP DataStore中。检查是否存储了正确的键名或ID,并检查是否向DataStore写入了该记录。
例如:
from google.cloud import datastore
# 获取实体记录
client = datastore.Client()
customer_key = client.key('Customer', '12345')
customer = client.get(customer_key)
# 检查记录是否存在
if not customer:
print('Record not found')
else:
print(customer)