【发布时间】:2021-09-17 07:59:11
【问题描述】:
我在应用程序中使用 datastore-entity 包来与 Google Cloud Datastore 交互。
我能够很好地创建实体,但我希望一旦保存实体的密钥/ID,就像使用谷歌库执行datastore.Client.put(entity) 时一样。相反,我只得到一个空对象。
import sys
import datetime
from datastore_entity import DatastoreEntity, EntityValue
class UserModel(DatastoreEntity):
username = EntityValue()
password = EntityValue()
# active = EntityValue(1)
date_created = EntityValue(datetime.datetime.utcnow())
__kind__ = "user"
__exclude_from_index__ = ['password']
def __init__(self, **kwargs):
super(UserModel, self).__init__(**kwargs)
@classmethod
def make_user(cls,username):
user = cls()
user.username=username
user.save(id=username)
print(f"making user: {user.key}", file=sys.stderr)
return user
hilly = UserModel.make_user("hiliarybilliary5005")
print(f"the key for hiliarybilliary is: {hilly.key.id_or_name}")
【问题讨论】: