Python 应用程序引擎-尝试设置模型属性值时出现问题
我对appengine还很陌生,我第一次尝试在appengine数据库中设置一些文本 这是我的密码:Python 应用程序引擎-尝试设置模型属性值时出现问题,python,google-app-engine,bigtable,Python,Google App Engine,Bigtable,我对appengine还很陌生,我第一次尝试在appengine数据库中设置一些文本 这是我的密码: def setVenueIntroText(text): venue_obj = db.GqlQuery("SELECT * FROM Venue").get() venue_obj.intro_text = text # Works if I comment out db.put(venue_obj) # These two lines 这引发
def setVenueIntroText(text):
venue_obj = db.GqlQuery("SELECT * FROM Venue").get()
venue_obj.intro_text = text # Works if I comment out
db.put(venue_obj) # These two lines
这引发了某种异常——由于django 1.02的设置,我无法判断这是什么
好的,我在下面的答案中给出了代码,在删除了我的数据存储后,代码仍然有效,但我仍然不满意
以下是最新消息:
我已经修改了我的代码,使之看起来对我有意义。getVenueIntroText在我调用它时没有抱怨-顺便说一句,我在数据库中没有任何项目
当我调用setVenueIntroText时,出于某种原因,它不喜欢我正在做的事情——如果有人知道原因,我真的很想知道:)
以下是我的最新尝试:
def getVenueIntroText():
venue_info = ""
venue_obj = db.GqlQuery("SELECT * FROM Venue").get()
if venue_obj is not None:
venue_info = venue_obj.intro_text
return venue_info
def setVenueIntroText(text):
venue_obj = db.GqlQuery("SELECT * FROM Venue").get()
if venue_obj is None:
venue_obj = Venue(intro_text = text)
else:
venue_obj.intro_text = text
db.put(venue_obj)
我认为这应该奏效:
def setVenueIntroText(text):
query = db.GqlQuery("SELECT * FROM Venue")
for result in query:
result.intro_text = text
db.put(result)
我认为主要的问题是我看不到错误消息-我真是太蠢了,我忘了在我的settings.py中输入DEBUG=True 事实证明,我的StringProperty中需要一个multiline=True
Django正在为我捕获异常。是否存在c:\users\louis\appdata\local\temp\dev\u appserver.datastore?还有,场馆里有什么东西吗?或者是空的吗?呃,你们真的需要弄清楚你们会遇到什么异常情况。如果您的安装程序正在隐藏异常,那么您就有一个严重的问题。我得到了与此相同的结果。我的错误消息总是告诉我-但我认为这掩盖了真正的异常…grrrr…我刚刚删除了临时数据存储和历史记录,并再次尝试了此代码,它成功了-谢谢:)