django - Django Rest Framework 查询数据不是 json 可序列化错误
问题描述
这是我的看法:
class BillDetailView(APIView):
serializer_class = BillSerializer
def get(self, request, format=None):
bill = Bill.objects.get(flat__id='a flat id')
return Response(bill)
我知道要获取详细的数据,我们可以使用RetriveAPIView
,但出于我的业务逻辑的某些原因,我不会使用它。
这就是我使用的原因APIView
我正在尝试响应您所看到的查询数据,但它会触发以下错误:
Object of type 'Bill' is not JSON serializable
谁能帮助我如何响应查询数据?
如果我在方法中传递字典Response
,它会很好用,但你这对我来说是不好的做法。
我只是在 Response 方法中传递查询的数据。在这种情况下有人可以帮助我吗?
解决方案
使用序列化bill
对象BillSerializer
#views.py
class BillDetailView(APIView):
serializer_class = BillSerializer
def get(self, request, format=None):
bill = Bill.objects.get(flat__id='a flat id')
return Response(self.serializer_class(bill).data)
推荐阅读
- java - guavaRateLimter vs ExecutorService 用于 rateLimiting 3p api 调用
- python - 在 Ruby 中编写嵌套的 for 循环
- css - 确保在 webfont 加载期间文本保持可见
- node.js - mongodb changestream“管道”不起作用nodejs
- google-bigquery - 在每个当前行和上一行 BigQuery 之间查找 MAX、AVG
- django - 在views.py中调用ajax函数从数据库中获取数据
- javascript - 无法在 Javascript/HTML 文件预览系统中播放视频或音乐
- sql - 如何取消嵌套具有唯一行号的 postgres 表
- amazon-web-services - 正则表达式模式在 nifi 中选择最新文件
- php - 如何在 PHPword 中使用 Mpdf 库。如何将 .docx 文件生成为 .pdf 文件