3.6 Flask中的特殊變量和方法:
在Flask中,有一些特殊的變量和方法是可以在模板文件中直接訪問的。
config 對象:
config 對象就是Flask的config對象,也就是 app.config 對象。
{{ config.SQLALCHEMY_DATABASE_URI }}
request 對象:
就是 Flask 中表示當前請求的 request 對象,request對象中保存了一次HTTP請求的一切信息。
request常用的屬性如下:
屬性 | 說明 | 類型 |
---|---|---|
data | 記錄請求的數據,並轉換為字符串 | * |
form | 記錄請求中的表單數據 | MultiDict |
args | 記錄請求中的查詢參數 | MultiDict |
cookies | 記錄請求中的cookie信息 | Dict |
headers | 記錄請求中的報文頭 | EnvironHeaders |
method | 記錄請求使用的HTTP方法 | GET/POST |
url | 記錄請求的URL地址 | string |
files | 記錄請求上傳的文件 | * |
{{ request.url }}
url_for 方法:
url_for() 會返回傳入的路由函數對應的URL,所謂路由函數就是被 app.route() 路由裝飾器裝飾的函數。如果我們定義的路由函數是帶有參數的,則可以將這些參數作為命名參數傳入。
{{ url_for('index') }} {{ url_for('post', post_id=1024) }}
get_flashed_messages方法:
返回之前在Flask中通過 flash() 傳入的信息列表。把字符串對象表示的消息加入到一個消息隊列中,然后通過調用 get_flashed_messages() 方法取出。
{% for message in get_flashed_messages() %} {{ message }} {% endfor %}