Django 序列化

前端之家收集整理的这篇文章主要介绍了Django 序列化前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

序列化:把一个对象转化成一个可以被保存到文件的数据类型的过程。


             可以被保存到本地文件


反序列化:把一个可以被保存到文件的数据转换成一个对象的过程就是反序列化。




序列化用法:


        分解页面,加快用户打开页面速度。




案列代码:


serializers 主要用于将对象转换为json格式的字符串,一般不建议使用,除非迫不得已情况下使用,原因是因为转化的json字段嵌套层数太多。




-----------------views,py------------------------------

from django.shortcuts import render

from django.shortcuts import HttpResponse

from app01 import models

import json

def xuliehua(request):

    return render(request,'xuliehua.html')

    

def get_data(request):

    from django.core import serializers    

    ret = {'status':True,'data':None}

    try:

        # user_list = models.UserInfo.objects.all()

        # QuerySet【obj,obj,obj】

        # ret['data'] = serializers.serialize("json",user_list)

        # // var

        # v = JSON.parse(arg.data);

        # // console.log(v);

        # user_list = models.UserInfo.objects.all().values('id','username')

        # ret['data'] = list(user_list)

        # console.log(arg.data);

        # user_list = models.UserInfo.objects.all().values_list('id','username')

        # ret['data'] = list(user_list)

        # console.log(arg.data);

        pass

    except Exception as e:

        ret['status'] = False

    result = json.dumps(ret)

    return HttpResponse(result)

html页面内容:


------------------------xuliehua.html----------------------------

<body>

    <h1>用户列表</h1>

    <table id="tb">

    </table>

    <script src="/static/jquery-3.1.1.js"></script>

    <script>

        $(function () {

            initData();

        });

        function initData() {

            $.ajax({

                url :'/get_data/',

                type:'GET',

                dataType:'JSON',

                success:function (arg) {

                    //$('#tb').append(arg);

                    if(arg.status){

                        console.log(arg.data);

                        //var v = JSON.parse(arg.data);

                        //console.log(v);

                    }

                }

            })

        }

    </script>

</body>

--------------------------get_data.html-----------------------------

{% for row in user_list %}

    <tr>

        <td>{{ row.id }}</td>

        <td>{{ row.username }}</td>

        <td>{{ row.email }}</td>

    </tr>

{% endfor %}


猜你在找的Django相关文章