0
我試圖對數據存儲區做一個簡單的保存字符串,重定向該實體的鍵,然後在下一個處理程序中獲取它。當我在PDFHandler中調用字符串(a.name())時,無論我輸入什麼內容,都會返回「w」。Google App Engine從數據存儲區返回奇數值
class Pdf(db.Model):
name = db.StringProperty(required=True)
class InputHandler(Handler):
def get(self):
self.render('cert_form.html')
def post(self):
name = self.request.get('name')
if name:
a = Pdf(name=name)
a.put()
self.redirect('/key=%s' % a.key())
else:
error = "Please enter your full name."
self.render('cert_form.html')
class PDFHandler(Handler):
def get(self, id):
a = db.Key.from_path('Pdf', id)
self.response.write(a.name())
application = webapp2.WSGIApplication([
(r'/', InputHandler),
(r'/key=(.)+', PDFHandler),
], debug=True)
您在數據存儲的AppEngine觀衆看到名稱字段值是什麼在你的PDF實體上? – gipsy 2015-02-05 20:54:28
它給出了名字「鮑比史密斯」,「約翰亞當斯」等這裏有另一個問題。我已經到了可以返回實體密鑰的地步。我如何簡單地從這裏查找實體屬性(名稱,ID)?當我輸入post = key.get()時,我得到 AttributeError:'str'對象沒有屬性'get' – 2015-02-05 21:02:16
看起來像你調用key.get()時 - 鍵是一個字符串而不是Key對象。如果您從url獲取密鑰 - 您需要先取得該字符串,然後在調用get()之前爲該實體創建一個Key對象。 – 2015-02-05 21:33:11