当前位置: 首页 > news >正文

Python Django 之模板继承详解(extends)

文章目录

  • 1 概述
    • 1.1 目的
    • 1.2 标签:block、extends
    • 1.3 目录结构
  • 2 templates 目录
    • 2.1 base.html:父页面
    • 2.2 login.html:子页面
  • 3 其它代码
    • 3.1 settings.py
    • 3.2 views.py
    • 3.3 urls.py

1 概述

1.1 目的

  • 模板继承 和 类继承 的目的是一样的,都是为了提高代码的复用

1.2 标签:block、extends

# 父 Html 中,block:定义语句块,供 子页面使用
{% block xx %}{% endblock %}# 子 Html 中,extends:继承父页面
{% extends "xx.html" %}

1.3 目录结构

在这里插入图片描述

2 templates 目录

2.1 base.html:父页面

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>{% block title %} 基础页面 {% endblock %}</title>{% block css %} {% endblock %}
</head>
<body><a href="https://www.baidu.com/"> 百度一下 </a>{% block content %} {% endblock %}{% block js %} {% endblock %}
</body>
</html>

2.2 login.html:子页面

{% extends "base.html" %}{% block title %}登录首页
{% endblock %}{% block css %}<style>p {color: red}</style>
{% endblock %}{% block content %}<p>姓名:<input type="text" placeholder="姓名"></p><p>密码:<input type="text" placeholder="密码"></p>
{% endblock %}{% block js %}<script>alert('欢迎登录')</script>
{% endblock %}

登录效果:
在这里插入图片描述

3 其它代码

3.1 settings.py

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

3.2 views.py

from django.shortcuts import render, HttpResponse, redirectdef login(request):return render(request, "login.html")

3.3 urls.py

from django.urls import pathfrom app01 import viewsurlpatterns = [path('login/', views.login),
]
http://www.lryc.cn/news/216372.html

相关文章:

  • 混合式ANC主动降噪耳机系统设计(含C源代码)
  • Linux查看磁盘、内存、cpu信息
  • C语言 强制类型转换的各种代码示例
  • python 二维码使用
  • uniapp的启动页、开屏广告
  • 基于人工势场法的航线规划
  • 在紫光同创盘古50K开发板上进行DDR读写测试
  • MySQL BinLog实战应用之二
  • Visual Studio Code 快 捷 键
  • 有色金属冶炼VR虚拟场景互动教学有何优势
  • Python将知网导出的endnote题录转为Refworks模式
  • 单元测试反射注解
  • Android 交叉编译openssl 、libxml2静态库
  • 神经网络气温预测
  • 体验SOLIDWORKS钣金切口工具增强 硕迪科技
  • (八)Flask之app.route装饰器函数的参数
  • ES6.8集群配置注意点
  • Powercli批量修改分布式交换机端口组
  • ZKP10.2 Efficient Recursion via Statement Folding (Nova)
  • 高浓度cod废水怎么处理
  • Docker学习——②
  • VSCode 设置平滑光标
  • Spring、SpringMVC、Mybatis
  • Kubernetes 架构
  • python---数据类型(列表)
  • CentOS 7升级gcc/G++版本
  • uni-app开发微信公众号 H5打开扫一扫功能
  • k8s-服务网格实战-入门Istio
  • 金属压铸件自动化3D全尺寸测量设备自动外观检测三维检测-CASAIM
  • Android笔记(十):结合Navigation组件实现Compose界面的导航