2014-09-23 51 views
3

我使用Google App Engine for Python和Jinja2模板。是否有模板标签来获取当前页面的URL?或者我必须将url作为变量传递给视图代码中的模板?如何使用jinja模板获取Google App Engine python中的当前网址

+0

根据@mgilson,这不能完成。 :(A [global](http://jinja.pocoo.org/docs/dev/api/#jinja2.Template.globals)函数看起来是最好的选择 – 2014-09-26 15:14:33

回答

7

{{ request.url }}给出当前网址。你需要完整的网址,还是只需要相对于根目录的路径?

例如,使用瓶,你可以有

{{ request.url }} 
{{ request.base_url }} 
{{ request.url_root }} 
{{ request.host_url }} 
{{ request.path }} 

+1

但是你必须将'request'传递给' template.render' - 我认为OP希望它只是在那里(我认为)在最好的情况下不是微不足道的... - 可能是['global'](http://jinja.pocoo.org/docs /dev/api/#jinja2.Template.globals)函数,它使用'webapp2.get_request()。url'? – mgilson 2014-09-23 03:28:59

+0

如果你不渲染它,那么这个模板有什么好处?这应该在当上下文传递的参数呈现 – GAEfan 2014-09-23 03:31:01

+0

不是说我不同意 - 而且这应该很容易,总是通过一个基础'webapp2.RequestHandler'中的特定函数传递它 - 我只是指出它这个答案不太适合bill。 – mgilson 2014-09-23 03:32:52

相关问题