如何检索和显示从GQL查询返回的几个结果的键?
main.py
class MainPage(webapp2.RequestHandler):
def get(self):
author = "William Shakespeare"
q = db.GqlQuery("SELECT * FROM Book " +
"WHERE author = :1 ", author)
keys = q.Key
template_values = {
'author': author,
'key': key,
}
template = jinja_environment.get_template('index.html')
self.response.out.write(template.render(template_values))更新1:
当我用
keys = q.key()我知道这个错误:
文件"C:\programming_google_app_engine_repo\datastore\main.py",第17行,在get key = q.key() AttributeError中:'GqlQuery‘对象没有属性'key’
发布于 2013-03-22 21:37:05
您的代码有不止一个问题。请退后一步,想一想你想做什么,然后再浏览一遍文档。
问题1
GqlQuery的结果没有密钥。您需要使用.get()或.fetch(1)来访问Book对象。
q = db.GqlQuery("SELECT * FROM Book WHERE author = :1 ", author)
my_book = q.get()问题2
要获得method的值,您需要记住包括父/括号。
my_book_key = my_book.key() # don't forget the parens/brackets
template_values = {
'author': author,
'key': my_book_key,
}https://stackoverflow.com/questions/15579873
复制相似问题