我已经使用运行 python 2.7 的 Google App Engine 为 iOS 应用程序构建了一个后端。当我创建对象时,我希望后端给它一个 ID,所有客户端都可以将其用作要查询的唯一标识符。我使用的这种方法涉及两个 put 并且基本上只是使用,因为我使用的是 db 而不是 ndb。是否有更好的方法来插入对象并为它们提供易于访问的整数 ID?
class Player(ndb.Model):
playerID = ndb.IntegerProperty()
username = db.StringProperty()
class createUserWithUsername(webapp2.RequestHandler):
def get(self):
username = self.request.get('username')
playerArr = Player.query(Player._properties["username"] == username).fetch(1)
if len(playerArr) > 0:
self.error(500)
else:
newPlayer = Player()
newPlayer.username = username
key = newPlayer.put()
newPlayer.playerID = key.id()
newPlayer.put()
# returning player as dict to client