我正在尝试进行get_by_id()
工作,但是我不确定我在做什么是错误的,或者它真的没有用。我期望它返回类似于的实体ndb.Key('Organization',id).get()
,但是两者都不起作用。这是我尝试过的:
class CompaniesPage(BaseHandler):
def get(self):
id = self.request.get('id')
organizations = Organization.query()
company = Organization.get_by_id(id) # first try
values = {
'organizations' : organizations,
'company' : company,
'id' : id
}
self.render_html('companies.html',values)
第二次尝试:
class CompaniesPage(BaseHandler):
def get(self):
id = self.request.get('id')
organizations = Organization.query()
company = ndb.Key('Organization',id).get() # second try
values = {
'organizations' : organizations,
'company' : company,
'id' : id
}
self.render_html('companies.html',values)
这是我的html使用Jinja2
。
<h3> {{ company }} <small>{{ id }} Category</small></h3>
我收到以下文本:
无6201245580656640类别
我试图遵循Google App Engine文档中有关模型get_by_id的参考。
您还没有说过如何创建实体,但是根据您的示例,None 6201245580656640 Category
一个id6201245580656640
告诉我您可能正在使用自动生成的id,它是整数而不是字符串。您正在从请求对象获取ID,该ID将是一个字符串。
将其转换为通话中的int get_by_id(int(id))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句