一、定义视图 在views.py
中定义函数处理操作:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 from demo.models import Studentfrom demo.serializers import StSerializerfrom django.http import HttpResponsefrom django.template import loader, Contextimport jsondef transmit (request) : t = loader.get_template("transmit.html" ) ulist = Student.objects.all() serializer = StSerializer(ulist, many=True ) result = {} result["stutue" ] = "200" result["data" ] = serializer.data json_str = json.dumps(result) c = Context({"title" : "测试" , "ulist" : ulist, "json_str" : json_str}) return HttpResponse(t.render(c))
通过Context
将变量title
、ulist
和json_str
传给模板中显示,其中Student
和StSerializer
用 的数据。
二、创建网页模板 在templates
中创建transmit.html
模板:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 <!DOCTYPE html> <html lang ="en" > <head > <meta charset ="UTF-8" > <title > {{ title }}</title > </head > <body > {% for foo in ulist %} {# 通过循环输出所有的list #} <h7 > id = {{ foo.id }}, {# 手动敲回车键是不识别的,只为阅读方便 #} username = {{ foo.username }}, password = {{ foo.password }}, email = {{ foo.email }}, have = {{ foo.have }}</h7 > <br /> {% endfor %} <p /> <h7 > json_str 是 <br /> {{ json_str }}</h7 > </body > </html >
三、配置URL 在urls.py
中配置url:
1 2 3 4 5 6 7 from django.conf.urls import url, includefrom demo import viewsurlpatterns = [ ... url(r'^transmit/$' , views.transmit), ]
四、查看