【发布时间】:2010-10-17 15:23:48
【问题描述】:
我是应用引擎的新手,我第一次尝试在应用引擎数据库中设置一些文本。
这是我的代码:
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)
【问题讨论】:
-
c:\users\louis\appdata\local\temp\dev_appserver.datastore 是否存在?另外,Venue 里面有什么东西还是空的?
-
呃,你真的需要弄清楚你得到了什么异常。如果您的设置隐藏了异常,那么您就有一个严重的问题。
标签: python google-app-engine bigtable