Fra*_*oel 2 google-app-engine jinja2 app-engine-ndb google-cloud-datastore
我正在努力完成这项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)
Run Code Online (Sandbox Code Playgroud)
第二次尝试:
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)
Run Code Online (Sandbox Code Playgroud)
这是我的html使用Jinja2
.
<h3> {{ company }} <small>{{ id }} Category</small></h3>
Run Code Online (Sandbox Code Playgroud)
我得到以下文字:
无6201245580656640类别
我尝试在Google App Engine文档中关注Model get_by_id的参考.
您还没有说过如何创建实体,但是根据您的示例None 6201245580656640 Category
,id 6201245580656640
告诉我您可能正在使用自动生成的id,这是一个整数而不是字符串.您从请求对象获取id,这将是一个字符串.
将其转换为通话中的int get_by_id(int(id))
归档时间: |
|
查看次数: |
2216 次 |
最近记录: |