模板的使用
1.如何使用模板
- 在manage.py的同級文件夾中創建templates
- 在setting.py的文件中把第58行
'DIRS': [ ],
改成'DIRS': [os.path.join(BASE_DIR,'templates')],
知識點:
os.path.join(BASE_DIR,'templates')
拼接兩個字符串
BASE_DIR
找到項目根目錄127.0.0.1:8000/myadmin/templates
2.如何在視圖函數中調用模板
‘’’
在views文件夾中創建視圖函數UserViews.py和GoodViews.py
1.引入render
from django.shortcuts import render
2.加載模板
return render(request,'myadmin/user/index.html')
request 必須帶,'myadmin/user/index.html':html
是頁面的路徑
- 在manage.py同級的文件夾下創建名為templates的文件夾
- 在templates文件夾中創建文件夾myadmin
- 把模板中的index.html復制到myadmin文件夾中,重命名為base
- 在myadmin文件夾中創建user文件夾和good文件夾
- 在user和good文件夾中創建子模板index.html
3.如何配置static公共文件夾的路徑
- 在templates同級文件夾下創建一個名為static的文件夾
- 在setting.py的最后加上
STATICFILES_DIRS = [os.path.join(BASE_DIR,'static')
]
- 在static中創建一個名為myadmin的文件夾
- 把模板中的assets文件夾復制到myadmin文件夾中
- 把base中的assets替換為/static/myadmin/assets
4.路由的反向解析
- 在myadmin中的urls給路由起一個名字
from .views import IndexViews,UserViews,GoodViews# 用戶管理
path('user/list',UserViews.index,name="myadmin/user/index"),
# 商品管理
path('good/list',GoodViews.index,name="myadmin/good/index"),
- 在base.html里把跳轉地址改成{% url ‘路由的名字’ %}
5.模板繼承
1.在子模板(user中的index.html)中把父模板(myadmin中的base.html)全部繼承
{% extends 'myadmin/base.html' %}
2.在父模板把可以替換的部分包含起來
{% block 'content' %} (注意:content只是名字,可以自定義)可以在子模板替換的區域內容
{% endblock %}
3.在子模板中直接找到替換的部分進行替換
{% block 'content' %}需要替換成的內容
{% endblock %}
注意:父模板和子模板繼承的名字一定要一樣