webapp2 - 如何反转模板中的 URL?
我从 webapp2 开始。我的英语不是很好,所以我会用 解释我的问题的例子: 假设我正在构建一个处理汽车信息的应用程序。
我有这些处理程序:
- ViewHandler:将显示单个汽车的视图,及其所有 信息(发动机、年份、品牌、型号等)
- ListHandler:将显示应用程序中的所有汽车,并带有 链接到查看页面。
问题是我无法构建到单个视图的链接。
我可以在模板中执行此操作:
<ul>
<li><a href='/cars/view/{{car.id}}'>{{car.model}}</a></li>
</ul>
但不喜欢那样(DRY 原则到底在哪里?) 我想知道是否有类似 django 的方法, 解析模板中的 URL,如下所示:
<ul>
<li><a href='{% url cars.view car.id}'>{{car.model}}</a></li>
</ul>
也许它不在模板中。我尝试过 webapp2.url_for() 但是 没有帮助。
多谢!
I'm starting with webapp2. My english is not very good, so i'll use an
example to explain my problem:
Suppose i'm building an application that will handle cars information.
I've these handlers:
- ViewHandler: will display a view for a single car, with all of its
information (engine, year, brand, model, etc..) - ListHandler: will display all the cars in the application, with a
link to the view page.
The problem is that i can't build that link to the single view.
I could do this in the template:
<ul>
<li><a href='/cars/view/{{car.id}}'>{{car.model}}</a></li>
</ul>
but don't like that (where's the DRY principle after all?)
I was wondering if there's some way to do it similar to django,
resolving the URL in the template, like this:
<ul>
<li><a href='{% url cars.view car.id}'>{{car.model}}</a></li>
</ul>
Maybe it's not in the template. I've tryed webapp2.url_for() but
didn't help.
Thanks a lot!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
webapp2.uri_for() 是您最好的选择,但您必须将其与命名路由结合使用。您可以在此处阅读有关 webapp2 路由与 uri_for 结合的更多信息:
http://webapp-improved.appspot.com/guide/routing.html
这是上面文章中的一个示例,展示了它的外观:
webapp2.uri_for() is your best bet, but you must use it in combination with named routing. You can read more about webapp2 routing in combination with uri_for here:
http://webapp-improved.appspot.com/guide/routing.html
Here's an example from the above article of how it might look: