08.16自我總結 django渲染高階 一.利用母版渲染 1.創建母版文件 如: 2.導入模板 二.一部分文件渲染 1.組件 2.導入組件 :這裡導入多個相同的內容會出現多個內容 三.函數渲染 1.內置函數渲染 使用方法: {{後臺傳輸的內容|內置函數}} 2.自定義函數渲染 1.在app中創建t ...
08.16自我總結
django渲染高階
一.利用母版渲染
1.創建母版文件
如:stamper.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
{% block css %}
{% endblock %} #寫css
</style>
</head>
<body>
{% block data %}
{% endblock %} #存放內容
</body>
{% block js %} #寫js
{% endblock %}
</html>
可以創建無數個block
2.導入模板
{% extends stamper.html %} #母版名稱
{% block css %}
#放在原母版的基礎上進行渲染
{% endblock %} #寫css
二.一部分文件渲染
1.組件
xx.html
<form action="">
<input type="text" class="word-input">
<button class="word-button"> 提交</button>
</form>
2.導入組件
{% include xx %}
註意
:這裡導入多個相同的內容會出現多個內容
三.函數渲染
不建議大家在模板中使用函數, 因為會降低模板的渲染效率, 建議大家在視圖處理函數中直接處理, 然後渲染即可
1.內置函數渲染
使用方法:
{{後臺傳輸的內容|內置函數}}
2.自定義函數渲染
1.在app中創建templatetags目錄
2.在上述的目錄中創建 xxx.py
3.在xxx.py中
from django import template
register = template.Library()
@register.filter
def my_filter(val, args):
return val + args
@register.simple_tag
def my_upper(val, args, args1):
return val + args + args1
4.在html中
{%load xxx %}
- simple_filter
{{name | my_filter:'xxxxx'}}
- simple_tag
{%my_upper "zekai" "sss" 'dsadsadsa'%}