谷歌 Appengine 路由失败

2024-04-24 17:34:06 发布

您现在位置:Python中文网/ 问答频道 /正文

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没有找到。 你能告诉我哪里错了吗?谢谢。你知道吗


Tags: self路由getmodeltemplaterouteindexedclass
1条回答
网友
1楼 · 发布于 2024-04-24 17:34:06

因此,模板中的链接的形式与为应用程序定义的路由不同。你知道吗

您定义了您的端点是/letter/([-\w]+),但是您的链接指向/letter/?letter_letter=a。你知道吗

将链接替换为

<a href="/letter/{{ letter.letter }}">{{ letter.letter }}</a>

编辑: 由于某些原因,webapp2.Route会使事情变得不正常。用('/letter/([-\w]+)', GoLetter)替换webapp2.Route('/letter/([-\w]+)', handler=GoLetter)。你知道吗

相关问题 更多 >