gpt4 book ai didi

python - 带有 Python 的 Google 应用引擎 : Unable to update the data entity

转载 作者:行者123 更新时间:2023-11-30 23:44:08 25 4
gpt4 key购买 nike

我已经阅读、阅读、再阅读文档,并在网上进行了多次搜索,但我还不明白为什么我的应用程序无法正常工作。当用户连接时,他必须填写一份表格。此代码有效。当用户注销然后登录时,表单字段将填充他的信息。这样,数据就被正确保存了。但是,当用户更改表单字段值并提交表单时,数据不会更新。

我的模型:

class Members(db.Model):
account = db.UserProperty()
hashtags = db.StringProperty()

这里是提交表单的类:

class Submit(webapp.RequestHandler):
def post(self):
user = users.get_current_user()

if user:
url = users.create_logout_url('/')
url_linktext = 'Logout'

member = db.GqlQuery("SELECT * FROM Members WHERE account = :1", user)

if member.count(1) > 0:
m = Members(account=user)
m.hashtags = ','.join([
self.request.get('hashtag1'),
self.request.get('hashtag2'),
self.request.get('hashtag3')])
m.put()
else:
member = Members()
member.account = user
member.hashtags = ','.join([
self.request.get('hashtag1'),
self.request.get('hashtag2'),
self.request.get('hashtag3')])
member.put()

self.redirect('/')
else:
self.redirect('/')

最佳答案

问题是您正在添加新记录而不是更新现有记录。对于您的代码,最简单的修复方法是更改​​此内容:

if member.count(1) > 0:
m = Members(account=user)

至:

if member.count(1) > 0:
m = member[0]

您的代码更新现有记录的原因是您尚未分配 key 。要了解有关 key 的更多信息,您可以在Kinds and Identifiers中阅读它们。 .

关于python - 带有 Python 的 Google 应用引擎 : Unable to update the data entity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10255119/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com