Python Google数据存储ID是一个长的unicode,而不是一个整数

Python Google数据存储ID是一个长的unicode,而不是一个整数,python,database,google-app-engine,unicode,google-cloud-datastore,Python,Database,Google App Engine,Unicode,Google Cloud Datastore,您好,我正在从Udacity进行web开发,并在python中试验google数据存储,并创建了一个名为Blog的简单实体 我检查了localhost:admin端口,所有的ID都像'524920594956096',应该像其他人一样是'1','2','3'。这与我的文本编辑器有关,还是与代码之外的其他设置错误有关 class Blog(db.Model): subject = db.StringProperty(required = True) content = db.TextPropert

您好,我正在从Udacity进行web开发,并在python中试验google数据存储,并创建了一个名为Blog的简单实体

我检查了localhost:admin端口,所有的ID都像'524920594956096',应该像其他人一样是'1','2','3'。这与我的文本编辑器有关,还是与代码之外的其他设置错误有关

class Blog(db.Model):
subject = db.StringProperty(required = True)
content = db.TextProperty(required =True)
created = db.DateTimeProperty(auto_now_add = True)

class NewPostHandler(Handler):
def get(self):
    self.render("newpost.html")

def post(self):

    subject = self.request.get("subject")
    content = self.request.get("content")

    if subject and content:
        newblog=Blog(subject=subject,content=content)
        newblog_key = newblog.put()

appengine有自己的标识符分配策略。你可能没事。有一些API可用于超IDs,但除非您的需求异常,否则您很可能不需要担心这些API。

他们将IDs的默认分配策略更改为Distributed()。对于dev_appserver,您可以这样覆盖它:

dev_appserver.py--自动\u id\u策略=顺序

有关详细信息,请参阅开发服务器页面的“指定自动ID分配策略”部分:


但是像@dyoo states一样,没什么好担心的,但是您可以在本地测试期间交换更容易的眼球查找

它实际上是一个长字符串,而不是一个字符串。您可以请求覆盖,但随后您将撤消性能优化。如果您对顺序ID的需求很强烈,那么就向这个方向倾斜,但一定要花时间来理解权衡。