Django序列化

序列化

关于Django中的序列化主要应用在将数据库中检索的数据返回给客户端用户,特别的Ajax请求一般返回的为Json格式。

1、serializers

1
2
3
4
5
from django.core import serializers
  
ret = models.BookType.objects.all()
  
data = serializers.serialize("json", ret)

2、json.dumps

1
2
3
4
5
6
7
8
import json
  
#ret = models.BookType.objects.all().values('caption')
ret = models.BookType.objects.all().values_list('caption')
  
ret=list(ret)
  
result = json.dumps(ret)

由于json.dumps时无法处理datetime日期,所以可以通过自定义处理器来做扩展,如:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import json
from datetime import date
from datetime import datetime
    
class JsonCustomEncoder(json.JSONEncoder):
     
    def default(self, field):
      
        if isinstance(field, datetime):
            return o.strftime('%Y-%m-%d %H:%M:%S')
        elif isinstance(field, date):
            return o.strftime('%Y-%m-%d')
        else:
            return json.JSONEncoder.default(self, field)
    
    
# ds = json.dumps(d, cls=JsonCustomEncoder)

  

posted @   佛祖让我来巡山  阅读(203)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~

佛祖让我来巡山博客站 - 创建于 2018-08-15

开发工程师个人站,内容主要是网站开发方面的技术文章,大部分来自学习或工作,部分来源于网络,希望对大家有所帮助。

Bootstrap中文网

点击右上角即可分享
微信分享提示