GAE - 如何在Python中编辑/更新数据存储?

2 投票
3 回答
2575 浏览
提问于 2025-04-15 14:23

我有一个数据存储模型

class Project(db.Model)
projectname = db.StringProperty()
projecturl = db.StringProperty()

class Task(db.Model)
project = db.ReferenceProperty(Project)
taskname= db.StringProperty()
taskdesc = db.StringProperty()

我该怎么修改任务名称 taskname 呢?比如我现在有一个任务叫 task1,我想把它改成 task1-project。

3 个回答

-1

最简单的方法可能就是使用管理控制台。在本地的话,你可以这样操作:

http://localhost:8080/_ah/admin

如果你已经上传了,那就可以在仪表盘上找到:

http://appengine.google.com/dashboard?&app_id=******

这里有一个链接:

1

假设你有一个叫做 t 的任务实例,这个实例是从数据库中获取的(比如通过某个 get 操作)。你可以对这个任务进行修改,比如你想在任务名称后面加上“-project”,那么你可以这样做:t.taskname = t.taskname + '-project'。这样就会把“-project”加到原来的任务名称后面。最后,你可能还需要把修改后的 t 重新放回数据库中(当然,如果你做了很多修改,不用每次修改后都放回去,只需要在所有修改完成后再放回去就可以了!)。

2

哦,抱歉,下面是格式化后的代码:

taskkey = self.request.get("taskkey")
taskid = Task.get(taskkey)
query = db.GqlQuery("SELECt * FROM Task WHERE key =:taskid", taskid=taskid)

if query.count() > 0:
 task = Task()
 task.taskname = "task1-project"
 task.put()

顺便说一下,我现在明白了。我把 task=Task() 改成了 task = query.get(),这样就能正常工作了。

谢谢你的帮助!

撰写回答