极简生活,极简编程,简到极致,就是完美!
目录Django的MVT,层层解析,T(Template),来了,以代码+注释展示。全部代码资源,在文末可点击极速下载,免费且不限速!
- 1. URL与视图绑定(urls.py)
- 2. 编写视图函数(views.py)
- 3. Template的常用标签语法(hello.html)
- 4. 测试结果
- 4.1 list
- 4.2 dict
- 4.3 str的操作
- 4.4 date的操作
- 4.5 父子模板
from django.contrib import admin
from django.urls import path
from . import views, db_views, form_view
urlpatterns = [
path('hello/', views.hello),
path('hello2/', views.hello2),
path('list/', views.get_list),
path('dict/', views.get_dict),
path('action/', views.get_action),
path('date/', views.get_date),
path('son/', views.get_son),
path('father/', views.get_father)
]
2. 编写视图函数(views.py)
import datetime
from django.http import HttpResponse
from django.shortcuts import render
def hello(request):
return HttpResponse("Hello World!")
def hello2(request):
context = {"message": "Hello World!"}
return render(request, "hello.html", context)
def get_list(request):
name_list = ["xiaoming", "xiaohong", "xiaojun"]
return render(request, "hello.html", {"name_list": name_list})
def get_dict(request):
user_dict = {"name": "zhangsan", "age": 18, "sex": "M", "job": "IT"}
user_dict2 = {"name": "lisi", "age": 20, "sex": "M", "job": "Doctor"}
return render(request, "hello.html", {"user_dict": [user_dict, user_dict2]})
def get_action(request):
long_str = "avdsaANGKAGANGA214215"
return render(request, "hello.html", {"long_str": long_str})
def get_date(request):
now_dt = datetime.datetime.now()
return render(request, "hello.html", {"now_dt": now_dt})
def get_son(request):
return render(request, "son.html")
def get_father(request):
return render(request, "father.html")
3. Template的常用标签语法(hello.html)
HELLO
{{ message }}
{#list1#}
- {{ name_list.0 }}
- {{ name_list.1 }}
- {{ name_list.2 }}
-
{% for name in name_list %}
- {{ name }} {% endfor %}
{#dict#}
| 姓名 | 年龄 | 性别 | 工作 |
| {{ user.name }} | {{ user.age }} | {{ user.sex }} | {{ user.job }} |
{#action:过滤器#}
- 原始字符串:{{ long_str }}
- 转大写:{{ long_str|upper }}
- 获取首字母并转大写:{{ long_str|first|upper }}
- 截取前10个字母:{{ long_str|truncatechars:"10" }}
- 字符串长度:{{ long_str|length }}
- 文件大小:{{ long_str|filesizeformat }}
- ====================================
- 原始日期:{{ now_dt }}
- 格式化:{{ now_dt|date:"Y-m-d H:i:s" }}
{#if-else#} {% if long_str|length > 10 %}
字符串长度大于10
{% elif long_str|length == 10 %}字符串长度正好等于10
{% else %}字符串长度小于10
{% endif %} 4. 测试结果启动服务
python manage.py runserver localhost:87654.1 list 4.2 dict 4.3 str的操作 4.4 date的操作 4.5 父子模板
代码资源在:HelloWorld.zip,下期是MVT的Model部分,和Java的Mybatis的通用Mapper差不多,不需要自己写SQL代码来操作数据库!Byebye!



