python-0007-django模版

介绍

模版是对js,html等资源的封装

新建

在项目路径下新建模版文件夹templates(可以为其他名称),要是想细分业务的话,还可以在templates路径下继续建文件夹。如下图:

注册模版

在项目的settings找到TEMPLATES,在DIRS中添加刚刚的模版,如下:

python 复制代码
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',
            ],
        },
    },
]

在视图返回模版

使用render进行渲染,如下:

python 复制代码
from django.shortcuts import render

# Create your views here.
from django.http import HttpRequest, HttpResponse


def index(request):
    context = {
        "name": "西游记"
    }
    return render(request,'book/index.html', context=context)
    pass

render源码如下:

python 复制代码
def render(request, template_name, context=None, content_type=None, status=None, using=None):

其中:request是HttpRequest对象,template_name是模版的路径,context是使用的数据

静态资源

在DEBUG = True的条件下

红框是静态路由,使用http://ip:port/static/girl.png即可访问

其中:/static是上图红框部分

相关推荐
不争先.4 分钟前
为什么在我的Flask里面有两个路由,但是在网页里有一个却不能正确访问到智能体
后端·python·flask
老猿讲编程16 分钟前
SQLite软件架构与实现源代码浅析
数据库·sqlite
zzc92125 分钟前
python h5py 读取mat文件的<HDF5 object reference> 问题
开发语言·python·numpy
五碗火锅25 分钟前
【Python】日期计算和自动化运行脚本
笔记·python·自动化
xy_optics29 分钟前
Wirtinger Flow算法的matlab实现和python实现
python·算法·matlab
怀旧,35 分钟前
【Python】3.函数与列表
java·前端·python
Python数据分析与机器学习1 小时前
【python实战】二手房房价数据分析与预测
大数据·开发语言·python·数据挖掘·数据分析·scikit-learn·ipython
疯狂成瘾者1 小时前
pycharm生成图片
ide·python·pycharm
Yan-英杰1 小时前
【python爬虫】利用代理IP爬取filckr网站数据
开发语言·人工智能·pytorch·python·机器学习·版本匹配
灏瀚星空1 小时前
【爬虫学习】Python数据采集进阶:从请求优化到解析技术实战
爬虫·python·学习