python - Django-wkhtmltopdf 返回非零退出状态 1
问题描述
我wkhtmltopdf
在开发中的 Django 项目中使用时收到以下错误。如果我尝试使用 Apache 服务器运行它,返回的状态码是 6 而不是 1。
命令'['wkhtmltopdf', '--disable-javascript', '--encoding', u'utf8', '--quiet', u'False', '/tmp/wkhtmltopdfnUwu3t.html', '-'] ' 返回非零退出状态 1
这是我的看法。
class MyPDF(OrgOwnerMixin, PDFTemplateView):
filename = 'my_pdf.pdf'
template_name = 'pdf/test.html'
def get_object(self, *args, **kwargs):
return Organisation.objects.get(slug=self.kwargs['slug'])
def get_context_data(self, *args, **kwargs):
ctx = super(MyPDF, self).get_context_data(*args, **kwargs)
ctx['object'] = self.get_object()
return ctx
这是追溯:
追溯:
File "/home/henry/Documents/Sites/Development/fargus/env/local/lib/python2.7/site-packages/django/core/handlers/exception.py" in inner
41. response = get_response(request)
File "/home/henry/Documents/Sites/Development/fargus/env/local/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
217. response = self.process_exception_by_middleware(e, request)
File "/home/henry/Documents/Sites/Development/fargus/env/local/lib/python2.7/site-packages/django/core/handlers/base.py" in _get_response
215. response = response.render()
File "/home/henry/Documents/Sites/Development/fargus/env/local/lib/python2.7/site-packages/django/template/response.py" in render
107. self.content = self.rendered_content
File "/home/henry/Documents/Sites/Development/fargus/env/local/lib/python2.7/site-packages/wkhtmltopdf/views.py" in rendered_content
78. cmd_options=cmd_options
File "/home/henry/Documents/Sites/Development/fargus/env/local/lib/python2.7/site-packages/wkhtmltopdf/utils.py" in render_pdf_from_template
186. cmd_options=cmd_options)
File "/home/henry/Documents/Sites/Development/fargus/env/local/lib/python2.7/site-packages/wkhtmltopdf/utils.py" in convert_to_pdf
124. return wkhtmltopdf(pages=filename, **cmd_options)
File "/home/henry/Documents/Sites/Development/fargus/env/local/lib/python2.7/site-packages/wkhtmltopdf/utils.py" in wkhtmltopdf
110. return check_output(ck_args, **ck_kwargs)
File "/usr/lib/python2.7/subprocess.py" in check_output
574. raise CalledProcessError(retcode, cmd, output=output)
Exception Type: CalledProcessError at /pdf/org-1/
Exception Value: Command '['wkhtmltopdf', '--disable-javascript', '--encoding', u'utf8', '--quiet', u'False', '/tmp/wkhtmltopdfEG5K8j.html', '-']' returned non-zero exit status 1
任何帮助都感激不尽
解决方案
我有一个类似的问题,但这是由于我的模板链接到外部文件。我发现解决方案是添加'enable-local-file-access': True
到我的选项中:
cmd_options = {'quiet': None, 'enable-local-file-access': True}
推荐阅读
- excel - VBA用户表单检查文件是否存在于所选文件夹中
- blockchain - 区块链中当前状态下的基础加密货币总量是如何计算的?
- css - 如何正确对齐?
- vmware - 在 VMware Vsphere 中启动 VM 的 API 方法?
- php - 当用户在 Symfony 中注销时,如何停止执行 XHR 请求?
- spring - 如何配置 Grails 3 + Spring Security 以使用多个入口点、用户域
- php - 如何理解这个魔法:“array_values() 期望参数 1 是数组,给定数组”?
- java - How to set a variable in INSTALL4j during the installation to make it available in the .exe file after installation
- java - JGit:如何在创建 Git 存储库并将其推送到 GitHub 时修复 NoRemoteRepositoryException?
- javascript - javascript计算没有空值的对象数组中的对象