gpt4 book ai didi

python - AppEngine - AppEngine HR 数据存储中奇怪的 ID 分配

转载 作者:行者123 更新时间:2023-11-30 23:52:06 29 4
gpt4 key购买 nike

Possible Duplicate:
How to implement “autoincrement” on Google AppEngine

我在 AppEngine 中有一个 Python 应用程序。我正在使用高复制数据存储。

这是我的问题:

我有一个在没有父项的情况下保存的实体(为简单起见,将其称为“人”),它是 AppEngine 术语中的根实体。

在保存实体之前我没有设置 key_name,因为我想要由数据存储分配的数字 ID。一些代码:

p = Person(name='Juan Roman Riquelme')
p.put()
p.key().id() # the numeric ID

问题是ID不连续。每次我更新我的应用程序(appcfg.py update)时,id 都会从接下来的数千个开始。我的意思是,第一次更新应用程序时,ID 为 1、2、3 等。下一次为:1001、1002、1003等。第三次为:2001、2002等。

发生什么事了?我应该怎么做才能保持它们连续?

谢谢!

最佳答案

为什么需要它们连续?

App Engine 数据存储区不会分配连续的 ID。

如果您想要连续的ID,您必须自己分配ID。不要忘记使用 allocate_id_range (http://code.google.com/appengine/docs/python/datastore/functions.html),以便应用引擎不会自动分配已存在的 ID。

关于python - AppEngine - AppEngine HR 数据存储中奇怪的 ID 分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6457019/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com