Django的模版引擎与模版使用

栏目: Python · 发布时间: 8年前

内容简介:Django的模版引擎与模版使用

Django的模版引擎与模版使用

模版引擎是模版响应的后端。模版指的是HTML、css,js等相关的文件。模版引擎是将这些表示层文件与数据相整合在一起,然后将整合后的数据给到响应类型判断采用一次性响应还是流响应,确定响应类型后将模版加工后的数据反馈给用户。

Django支持两种模板引擎,Django模版引擎和Jinja2模版引擎。在settings.py文件中对模版引擎进行配置(BACKEND)。模版目录在列表中的顺序是搜索模版的顺序。

文件中是这样写的:

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',
            ],
        },
    },
]

BACKEND的键值是模版引擎的配置,DIRS的键值是模版目录。

模版的查找:

使用get_template(template_name)方法查找,它是Template类。template_name是带查找模版的名称。它会在模版目录列表中,依次查找某个模版,直到找到并返回Template类,如果没有找到,则抛出TemplateDoesNotExist异常。

将模版文件表达为Template类型,进行数据加工,渲染为可以响应给用户的既有模版表现,又有数据内涵的字符串的过程称之为渲染。

渲染语句:Template.render(context,request)中的Context参数是字典类型,用于加载到模版中的内容,request参数是HTTP请求。

如果有静态的模版文件并不需要与数据整合在一起时,则不需要渲染。

实例代码:

Views.py

from django.shortcuts import render,HttpResponse
from django.template import Template,Context
def test(request):

    template= Template("<h1>this test name is {{ name}}</h1>")

    context = Context({"name":"ceshi"})

    return HttpResponse(template.render(context))

在urls.py的urlpatterns列表里加上path( 'test/' ,views.test)


以上所述就是小编给大家介绍的《Django的模版引擎与模版使用》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

洞察人心

洞察人心

Steve Portigal / 张振东、蒋晓、戴传庆、孙启玉 / 电子工业出版社 / 2015-10 / 65.00元

用户在哪里,有什么需求?他们为什么会选用竞争对手的产品而不是你的?从大数据中固然能得出一些结论,但是要搞清楚作为地球上顶级复杂生物的人的真实想法,还是走近他们,面对面访谈更直接有效。 用户访谈是一项技能,与一般的交谈有本质上的区别,需要遵从一定的步骤和方法。优秀的采访者用最自然的方式和用户进行交流,看似不经意,而实际上该说什么、何时说、如何说以及什么时候应该沉默,都有精准的权衡,都试图在闲聊......一起来看看 《洞察人心》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器