压缩并下载Django Rest Framework生成的JSON文件
假设我的 Django Rest Framework 应用在这个网址返回了一个 JSON 数据(其中 4 是一个模型的主键):http:mydomain.com/model_number/4/?format=json
[
{
"id": 96,
"title": "title 1",
"picture": "static/uploads/pic1.jpg"
},
{
"id": 97,
"title": "title 2",
"picture": "static/uploads/pic2.jpg"
},
{
"id": 98,
"title": "title 3",
"picture": "static/uploads/pic3.jpg"
}
]
我想创建一个 ZIP 文件,里面包含一个 JSON 文件(这个文件的内容就是上面提到的,由 Django Rest Framework 生成的),还有一个文件夹,里面有 pic1
、pic2
和 pic3
这些图片。
我可以下载一个包含这些图片的 ZIP 文件,但我不知道怎么把 JSON 文件也放进去。
我不确定这是否和 解析器 有关:
任何帮助都非常感谢
1 个回答
1
只需要用你的模型实例来创建一个序列化器的实例。这个序列化器对象有一个叫做 data
的属性。
class YourModel(models.Model):
...
class YourModelSerializer(serializers.ModelSerializer):
...
your_json = YourModelSerializer(YourModel.objects.get(pk=5)).data
你也可以使用查询集,并加上一个标志 many=True
:
your_json = YourModelSerializer(YourModel.objects.all(), many=True).data