Django框架基础知识04-模板标签与模板继承
1.常用的模板标签 -作用是什么?
标签在渲染的过程中提供任意的逻辑
标签语法: 由{%和 %} 来定义的,
例如:{%tag%}{ %endtag%}
这个定义是刻意模糊的。 例如,一个标签可以输出内容,作为控制结构,例如“if”语句或“for”循环从数据库中提取内容,甚至可以访问其他的模板标签。
常用标签:
模板标签的例子:
3.url页面转换的例子
4.with的使用
5.autoescape的使用
6.注释标签
模板的继承与引用:
Django模版引擎中最强大也是最复杂的部分就是模版继承了。 模版继承可以让你创建一个基本的“骨架”模版,它包含您站点中的全部元素,并且可以定义能够被子模版覆盖的 blocks 。
1.创建三个模板文件,base.html,indexxx.html,ss.html
base.html 这个作为模板继承页
indexxx.html 在这个模板中实现继承和引用
ss.html 这个作为模板的引用页
2.base.html中的内容
2.ss.html中的内容
2.indexxx.html中的内容
模板继承使用extends标签实现。通过使用block来给子模板开放接口。
1、extends必须是模板中的第一个出现的标签。
2、子模板中的所有内容,必须出现在父模板定义好的block中,否则django将不会渲染。
3、如果出现重复代码,就应该考虑使用模板。
4、尽可能多的定义block,方便子模板实现更细的需求。
5、如果在某个block中,要使用父模板的内容,使用block.super获取。
项目复习
1.搭建环境
虚拟环境
mkvirtualenv -p /usr/bin/python3.6 mysite
安装django
pip install django
2.创建django项目(统一命令行创建,不要用IDE)
django-admin startproject mysite
django-admin -h查看帮助
mysite文件夹不能随便改
3.pycharm项目
pure python
虚拟解释器
SSH interpreter #127.0.0.1:22 pyvip pythonvip
tools>deployment>configration
4.测试
端口转发
配置pycharm,运行django
settings>django中设置project root:
settings: crm/settings.py
在Run/Debug Configrations中设置host:0.0.0.0,才能访问.
在settings.py中设置ALLOWED_HOSTS = ["星号"]代表什么地址都可以.
5.开发
切换虚拟环境之后 python manage.py startapp teacher
注册app
在settings.py中
INSTALLED_APPS = [
'teacher', #或者'teacher.apps.TeacherConfig'
]
在urls.py中配置urlpatterns.
创建一个视图
配置url
urls.py中
app_name = 'teacher'
from . import views
views.py中
from django.http import HttpResponse
配置模板和静态文件:
settings.py中:
TEMPLATES = ['DIRS':[os.path.join(BASE_DIR,'templates')],]
在templates文件夹中配置app名称的文件夹,teacher
在项目根目录创建static文件夹,再创建与app同名的文件夹.
settings.py设置
STATICFILES_DIRS = [os.path.join(BASE_DIR,'static')]
{% load static %}