django 的模板里面变量取值是经过句点语法来取值,就是一个点(.)符号。取值的对象也能够是字符串,int类型,list列表,字典键值对,也能够是一个类的实例对象。html
好比我在 views.py 视图函数定义了一些不一样类型的变量python
from django.shortcuts import render from django.http import HttpResponse # Create your views here. from django.http import JsonResponse from django.shortcuts import render # 上海悠悠,QQ交流群:750815713 def personalView(request): context = { "name": "上海-悠悠", "n_name": "悠悠", "age": 20, "fancy": ["python", "django", "pytest"], "blog": { "url": "https://www.cnblogs.com/yoyoketang/", "img": "https://pic.cnblogs.com/avatar/1070438/20161126151035.png" } } class Myblog(): def __init__(self): self.name = "上海-悠悠" self.age = 20 def guanzhu(self): return 100 def fensi(self): return 1000 myblog = Myblog() # 实例 context["myblog"] = myblog return render(request, "personal.html", context=context)
在 templates 目录下新建一个 personal.html 模板django
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="referrer" content="no-referrer" /> <title>Title</title> </head> <body> <div> <h1 class="display_name">{{ name }}</h1> <div> <p class="text_gray"><span>姓名: </span>{{ n_name }}</p> <p class="text_gray"><span>年龄:</span>{{ age }}</p> <p class="text_gray"><span>感兴趣的技术:</span>{{ fancy.0 }}、{{ fancy.1 }}、{{ fancy.2 }}</p> </div> </div> <h1 class="display_name">经过字典对象取值</h1> <div> <p class="text_gray"><span>博客地址: </span> <a href="{{ blog.url }}"> {{ blog.url }} </a> </p> <p class="text_gray"><span>头像</span> <img src="{{ blog.img }}"> </p> </div> <h1 class="display_name">经过属性、方法取值</h1> <p class="text_gray"><span>名称: </span>{{ myblog.name }}</p> <p class="text_gray"><span>关注数: </span>{{ myblog.guanzhu }}</p> <p class="text_gray"><span>粉丝数:</span>{{ myblog.fensi }}</p> </body> </html>
最终显示效果以下函数