docx2pdf模块在站点处于活动状态时导致错误

2024-09-23 16:18:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试生成pdf报告并在浏览器中向用户显示。 我使用的方法是使用docx生成报告,然后使用docx2pdf将生成的报告转换为pdf格式

我的代码在我的机器上本地托管时工作得很好。然而,当我试图通过heroku在线敬酒时,我得到以下错误:

docx2pdf is not implemented for linux as it requires Microsoft Word to be installed

奇怪的是我没有使用linux机器。我尝试过safari和google chrome浏览器,得到了相同的结果。我觉得这很奇怪,因为当我在本地托管站点时,pdf会生成并以我想要的方式显示在浏览器中。但当我上传到heroku时,我得到了错误

处理转换的代码是:

def making_a_doc_function(request):

doc = docx.Document()
doc.add_heading("no text")
doc.save('thisisdoc.docx')

#converting the generated docx into a pdf file
convert("thisisdoc.docx", "output.pdf")
pdf = open('output.pdf', 'rb')
response = FileResponse(pdf)

return response

Tags: 代码机器outputherokudocpdfresponselinux