Google app engine 谷歌应用引擎增量标识符(ID)

Google app engine 谷歌应用引擎增量标识符(ID),google-app-engine,key,sequence,Google App Engine,Key,Sequence,我正在为GAE主办的一所学校构建一个软件,我需要创建一个新学生的标识符并对其排序。创建时,它实际上不需要是“密钥”,但需要将这个数字增加1,每次添加一个新学生时,它将是打印在学校卡上的学生编号 使用,我正在这样做: student = new Entity("student") student << params.subMap(["name", "birthdate"]) student.save() student=新实体(“student”) 学生您可以使用实体(字符串种类,字

我正在为GAE主办的一所学校构建一个软件,我需要创建一个新学生的标识符并对其排序。创建时,它实际上不需要是“密钥”,但需要将这个数字增加1,每次添加一个新学生时,它将是打印在学校卡上的学生编号

使用,我正在这样做:

student = new Entity("student")
student << params.subMap(["name", "birthdate"])
student.save()
student=新实体(“student”)
学生您可以使用
实体(字符串种类,字符串键名)
构造函数创建一个

new Entity("student", "" + id);
只要
id
在所有学生中都是唯一的

要维持递增计数器,只需使用普通数据存储实体来存储计数。数据存储(事务)的并发保护将整洁地确保连续实体编号。碎片计数器不一定会给你顺序ID(谢谢@Nick Johnson)

按键名获取的一种方法是(从):

您可以使用
实体(字符串种类、字符串键名)
构造函数创建一个

new Entity("student", "" + id);
只要
id
在所有学生中都是唯一的

要维持递增计数器,只需使用普通数据存储实体来存储计数。数据存储(事务)的并发保护将整洁地确保连续实体编号。碎片计数器不一定会给你顺序ID(谢谢@Nick Johnson)

按键名获取的一种方法是(从):


您可能想看看在哪里可以找到序列号的Python实现。

您可能想看看在哪里可以找到序列号的Python实现。

切分计数器不会提供单调的增加-切分计数器或多或少是应用引擎内部用于分配ID的计数器。如果绝对必须是连续的,则需要一个标准的非分片计数器及其相关的更新率限制。分片计数器不会提供单调的增加-分片计数器或多或少是应用程序引擎内部用于分配ID的计数器。如果绝对必须是顺序的,则需要一个标准的非分片计数器及其相关的更新速率限制。