我正在尝试解决一个错误。以下函数将 Key 对象添加到用户的名为 tabs 的属性中。由于某种原因,在调用put()
用户实体后,新添加的密钥没有保存。想不通为什么。也许有一些延迟会阻止更改立即出现?在那种情况下,memcache 是解决方案吗?
class User(GeoModel):
tabs = db.ListProperty(db.Key)
@db.transactional
def add_tab_transaction(self, user_key, tab_key):
user = models.User.get(user_key)
user.tabs.append(tab_key)
user.put()
logging.debug('tabs this user has:')
logging.debug(user.tabs) # prints the list with the new value
user = models.User.get(user_key)
logging.debug('rechecking the same thing:')
logging.debug(user.tabs) # prints the list without the new value