我问,因为我现在拥有它的方式似乎很奇怪.基本上,我说,“如果抛出异常,就做点什么.不过,什么都不做.”以下是一些示例代码:
try:
db.get(db.Key(uid))
except:
newUser = User(key_name=str(uid))
newUser.first_name = self.request.get("first")
newUser.last_name = self.request.get("last")
newUser.email = self.request.get("email")
newUser.phone = self.request.get("phone")
db.put(newUser)
谢谢!
最佳答案 请改用User.get_by_key_name(str(uid)).如果实体不存在,它将返回None.
有关详情,请参见http://code.google.com/appengine/docs/python/datastore/modelclass.html#Model_get_by_key_name.
User.get_or_insert(str(uid))也可能非常适合您要做的事情.