1. 程式人生 > >Django將request對象傳入模板配置

Django將request對象傳入模板配置

ext gpo body request emp class context ges message

對於很多時候,需要從模板中獲取很請求中很多內容,比如當前請求的url,當前的session變量中的某個值,這時候我們可以通過配置可將request對象傳遞進模板。

django1.10版本:

settings.py

TEMPLATES = [  
    {  
        BACKEND: django.template.backends.django.DjangoTemplates,  
        DIRS: [],  
        APP_DIRS: True,  
        OPTIONS: {  
            context_processors
: [ ... django.template.context_processors.request, ... ], }, }, ]

添加:

TEMPLATE_CONTEXT_PROCESSORS = (  
    "django.core.context_processors.request",  
) 

django1.11版本:

只需在setting.py的TEMPLATES中添加django.template.context_processors.request

TEMPLATES = [
    {
        BACKEND: django.template.backends.django.DjangoTemplates,
        DIRS: [os.path.join(BASE_DIR, templates)]
        ,
        APP_DIRS: True,
        OPTIONS: {
            context_processors: [
                django.template.context_processors.debug,
                
django.template.context_processors.request, django.contrib.auth.context_processors.auth, django.contrib.messages.context_processors.messages, django.template.context_processors.request, ], }, }, ]

模板中獲取某個request值

#獲取session中某個值 
{{ request.session.username }}
#獲取當然請求的url
{{ request.path }}

Django將request對象傳入模板配置