我的webapp2路由失败了。
我的模特:
class Letter(ndb.Model):
letter = ndb.StringProperty(indexed=False)
我的经纪人:
lass GoLetter(webapp2.RequestHandler):
def get(self, letter_letter):
pass
template = JINJA_ENVIRONMENT.get_template('detail.html')
self.response.write(template.render())
application = webapp2.WSGIApplication([
webapp2.Route('/', MainPage),
webapp2.Route('/letter/([-\w]+)', handler=GoLetter),
], debug=True)
和我的模板:
{% for letter in letters %}
<a href="/letter/?letter_letter={{ letter.letter }}">{{ letter.letter }}</a>
{% endfor %}
我只找到404 Not Found。 请你能说我哪里错了?感谢。
答案 0 :(得分:3)
因此,模板中的链接具有与为应用程序定义的路径不同的形式。
您已定义终端为/letter/([-\w]+)
,但您的链接转到/letter/?letter_letter=a
。
用
替换链接<a href="/letter/{{ letter.letter }}">{{ letter.letter }}</a>
修改强>
由于某些原因,有webapp2.Route使事情无法正常工作。将webapp2.Route('/letter/([-\w]+)', handler=GoLetter)
替换为('/letter/([-\w]+)', GoLetter)
。