在django中,有自帶的模板引擎djangotemplates
用來渲染模板,使用django的模版語言,叫做dtl,jinja2也是十分常見的模板渲染引擎,django對jinja2也提供了支援,那麼如何將你的django專案配置成使用jinja2引擎呢?
首先,需要在當前環境中安裝jinja2:pip install jinja2
可以通過pip list
檢視當前python環境中安裝的模組。
django的配置,一般是放在settings.py
檔案中,模板的配置也在此檔案中,如果你是使用django-admin startproject project_name
來建立的專案的話,配置檔案的預設路徑為:./project_name/project_name/settings.py
在配置檔案中找到如下**:
templates = [,},
]複製**
這段**即為django預設生成的模板配置。所以,將引擎替換成jinja2的第一步,就是修改這一段配置:
templates = [,},
]複製**
使用jinja2時,需要在options欄位中,新增環境變數的路徑,以使得模版api可以統一起來,你可以建立這樣乙個檔案project_name/jinja2.py
,內容如下:
from django.contrib.staticfiles.storage import staticfiles_storage
from django.urls import reverse
from jinja2 import environment
defenvironment
(**options):
env = environment(**options)
env.globals.update()
return env
複製**
並且在options中新增如下**:
templates = [,},
]複製**
至此,就可以在專案中愉快的使用jinja2啦~ Django使用jinja2模板
jinja2 是 python 下乙個被廣泛應用的模板引擎,是由python實現的模板語言,他的設計思想 於 django 的模板引擎,並擴充套件了其語法和一系列強大的功能,尤其是flask框架內建的模板語言 由於django預設模板引擎功能不齊全,速度慢,所以我們也可以在django中使用jinj...
django 使用Jinja2模板引擎
jinja官網 jinja is a modern and designer friendly templating language for python,modelled after django s templates.it is fast,widely used and securewith...
django更換jinja2模板的csrf配置
1.settings.py中在 middleware中加上 django.middleware.csrf.csrfviewmiddleware 這個中介軟體 2.如果需要校驗cookie中的csrf值,則在views.py中匯入 from django.core.context processors...