使用Google App Engine和ndb时,您是否曾看到重复的ID?

时间:2014-12-17 17:09:16

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

Appengine production db

class Entries(ndb.Model):
  description = ndb.StringProperty()
  seqid = ndb.IntegerProperty()
  link = ndb.StringProperty()
  group = ndb.StringProperty()
  timestamp = ndb.StringProperty()
  referrals = ndb.StringProperty(repeated=True)

图片中的两个条目由两个不同的用户创建。用户是Entry的父级。

我在制作时获得了重复的ID但在本地没有。此外,它始终是相同的ID号(但它肯定不是任何地方的硬编码)

由于父母是用户,我仍然可以将其作为唯一条目拉出来,但如果我有两个具有相同父用户的条目,则意味着会出现问题。

1 个答案:

答案 0 :(得分:6)

数据存储区的唯一键是完全限定键,包括所有父实体键,而不仅仅是ID。具有相同ID和不同父母的多个实体是完全有效的,您不应该仅依赖于唯一ID。