zoukankan      html  css  js  c++  java
  • django 学习记录(一)

    不使用 drf 来实现django 的 api 接口 json序列化

    from django.shortcuts import render
    from django.views.generic.base import View
    
    from users.models import UserProfile
    
    
    # Create your views here.
    #  通用类型
    
    class GoodsView(View):
    
        def get(self, request):
            goods = UserProfile.objects.all()
            good_list = []
    
            # for good in goods:
            #     good_dict = {}
            #     good_dict["name"] = good.username
            #     good_dict["email"] = good.email
            #     good_list.append(good_dict)
    
            # model_to_dict 直接转为dict 不用每个字段都去填写
            ## 同时有个问题 就是 time 和 image 无法正常序列化
            from django.forms.models import model_to_dict
            for good in goods:
                good_dict = model_to_dict(good)
                good_list.append(good_dict)
    
            # from django.http import HttpResponse
            # import json
            # return HttpResponse(json.dumps(good_list), content_type="application/json")
    
            # 这样就是序列化 时间和图片
            from django.core import serializers
            import json
            json_data = serializers.serialize("json",goods)
            json_data = json.loads(json_data)
            from django.http import HttpResponse,JsonResponse
            import json
            # return HttpResponse(json.dumps(json_data), content_type="application/json")
            return JsonResponse(json_data,safe=False)
    
    
  • 相关阅读:
    emlog6.0代码审计
    Linux系统
    PHP反序列化链挖掘
    Yii框架反序列化RCE利用链分析
    CVE-2020-1472漏洞复现
    linux 报错 Input/output error
    SKimage
    layui 统计行totalRow 保留两位小数
    linux清空历史命令(history)
    shred 命令详解
  • 原文地址:https://www.cnblogs.com/libaibuaidufu/p/10164069.html
Copyright © 2011-2022 走看看