更新应用引擎实体

时间:2011-02-21 13:12:13

标签: python google-app-engine

如何更新应用引擎中的现有记录。

4 个答案:

答案 0 :(得分:41)

只要实体定义了密钥,它就会在put()上更新:

record = Record(value='foo')
# This creates a new record
record.put()

record.value = 'shmoo'
# This updates it
record.put()

key = record.key()
record2 = Record.get(key)
record2.value = 'bar'
# Yet again this updates the same record
record2.put()

答案 1 :(得分:2)

我使用GQL查询查找实体,如果存在则更新de atribute。

 result = db.GqlQuery('select name from Person where name = "tadeu"')
 if result:
   for r in result:
       r.attribute = "value"
       r.put()   

答案 2 :(得分:1)

您是否阅读了非常好的概述here

  1. 通过某种查询从数据存储中获取记录。
  2. 进行所需的更改
  3. 在您更改的实体上调用put(),将其保存回数据存储区。

答案 3 :(得分:-3)

如果您有权访问数据存储区,请使用gql 您必须根据db类定义进行更新的方法。更新只能通过类进行,并且需要通过请求进行调用。