Python Django 母版和继承解析
Python  /  管理员 发布于 7年前   162
可以把多个页面相同的部分提取出来,放在一个母板里,这些页面只需要继承这个母板就好了
通常会在母板中定义页面专用的 CSS 块和 JS 块,方便子页面替换
定义块:
{% block 名字 %}{% endblock %}
views.py 中添加函数:
from django.shortcuts import render, redirect, HttpResponsefrom app01 import modelsimport datetimedef muban_test(request): return render(request, "muban_test.html")
urls.py 中添加对应关系:
from django.conf.urls import urlfrom django.contrib import adminfrom app01 import viewsurlpatterns = [ # 母板 url(r'^muban_test/', views.muban_test),]
muban.html:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><hr>{# 定义母板 #}{% block page-main %}{% endblock %}<hr></body></html>
muban_test.html:
{# 首先继承母板 #}{% extends 'muban.html' %}{# 这里的名字 page-main 和继承的母板的名字要相符 #}{% block page-main %} <h1>hello world</h1>{% endblock %}<br data-filtered="filtered"><br data-filtered="filtered"><h1>Test</h1>
运行结果:
可以看到,muban_test.html 中没有写 hr,但是显示了从 muban.html 继承过来的 hr
muban_test.html 中写的 test 也没有显示出来,因为它是把块中的内容贴到母板中块的部分
views.py 函数中 return 的是 muban_test.html,而不是 muban.html
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号