2014-09-23 50 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

相關問題