如何解决Django Rest Framework作为响应返回docx文件
我有一个函数,应在将文件保存到数据库之前使用request.data
生成docx文件
SaveDataAndReturnDocx
Views.py
SaveDataAndReturnDocx
class SaveDataAndReturnDocx(generics.ListCreateAPIView):
queryset = ClientData.objects.all()
serializer_class = ClientDataSerializer
def create(self,request,*args,**kwargs):
docxContractGenerate(request.data)
serializer = self.get_serializer(data=request.data,many=isinstance(request.data,list))
serializer.is_valid(raise_exception=True)
self.perform_create(serializer)
headers = self.get_success_headers(serializer.data)
return Response(serializer.data,status=status.HTTP_201_CREATED,headers=headers)
Service.py ,这里我有一个函数(使用了 docxtpl 库),该函数可以更改并呈现docx模板
def docxContractGenerate(data):
#print('-------------DOCS-------------')
doc = DocxTemplate("docs/template.docx")
#print(doc)
context = data
doc.render(context)
doc.save("docs/"+context['director']+".docx")
我尝试发送文档的url,但是我不想将数据存储在存储中。 最好通过响应发送文件,但不要将其保存在存储中。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。