如何使用其名称中的破折号访问Google Cloud Datastore实体?

时间:2016-09-16 09:26:19

标签: python google-app-engine google-cloud-platform google-cloud-datastore

我正在开发一个Google App Engine项目,我需要访问一个名称包含破折号的数据存储区实体,例如random-entity。我想用Python做到这一点。由于random-entity是类名的无效语法,因此我无法创建模型并像这样访问它。

那我该如何访问这个实体呢?是否可以在不创建模型的情况下执行此操作并仅以JSON格式检索它?

请记住,重命名实体不是我正在处理的项目的选项。

1 个答案:

答案 0 :(得分:2)

如果您使用NDB library,则需要覆盖模型的class method _get_kind(cls),如下所示:

class RandomEntity(ndb.Model):

  @classmethod
  def _get_kind(cls):
    return 'random-entity'

  # You can override property name as well
  random_name = ndb.StringProperty('random-name')

编辑:在_get_kind

之后添加了缺少的冒号