Python 应用程序引擎-在运行时指定实体名称
在低级JavaAPI中,我曾经能够在运行时生成实体名称 在python中,我似乎必须预先定义一个类名,它也是我的实体名:Python 应用程序引擎-在运行时指定实体名称,python,google-app-engine,entity,Python,Google App Engine,Entity,在低级JavaAPI中,我曾经能够在运行时生成实体名称 在python中,我似乎必须预先定义一个类名,它也是我的实体名: class SomeKindaData(db.Expando): pass sKD = SomeKindaData(key_name='1') ... 在App Engine for Python中,有没有一种在运行时生成实体名称的方法?我对App Engine了解不多,但您可以在运行时这样定义类: def get_my_class(name): retu
class SomeKindaData(db.Expando):
pass
sKD = SomeKindaData(key_name='1')
...
在App Engine for Python中,有没有一种在运行时生成实体名称的方法?我对App Engine了解不多,但您可以在运行时这样定义类:
def get_my_class(name):
return type(name, (db.Expando,), {})
因此有三个论点:
- 班级名称
- 要从中继承的类的元组
- 类属性字典
def get_my_class(name):
return type(name, (db.Expando,), {})
因此有三个论点:
- 班级名称
- 要从中继承的类的元组
- 类属性字典
实体本身没有名称。在数据存储中,实体由键标识,键可以有名称或ID。您正在示例代码中将实体的密钥名称设置为“1”。实体也按种类分类,在本例中为SomeKindaData Model和db.Expando围绕数据存储提供了本地ORM抽象。使用这些时,实体的种类名称默认设置为模型类名。如果不想在创建实体之前定义模型类,可以使用:
他指的是种类名称,哪些实体有。他指的是种类名称,哪些实体有。