Odoo 12:如何通过网络呈现 pdf?

Odoo 12 : How to render pdf throught web?

我正在尝试从 Web 获取 pdf,但是当我单击按钮呈现 pdf 时,出现错误:文件在 text/plain 中。这是代码:

@http.route('/comande/suivi/<int:orderid>', type='http', auth='user', website=True)
def print_suivi(self, orderid, **kw):
    pdf = request.env.ref('modul_name.report_model_name').report_action(orderid, data={'order': orderid})
    pdfhttpheaders = [('Content-Type', 'application/pdf'), ('Content-Length', len(pdf)),
                      ('Content-Disposition', 'attachment; filename="report.pdf"')]
    return request.make_response(pdf, headers=pdfhttpheaders)`

你能帮帮我吗?谢谢

添加render_qweb_pdf()后就不需要使用report_action()方法了。尝试做这样的事情:

    pdf_report = request.env['report.module_name.report_template_name']
    pdf, _ = request.env.ref('module_name.report_name').sudo().with_context().render_qweb_pdf(pdf_report)
    pdfhttpheaders = [('Content-Type', 'application/pdf'), ('Content-Length', len(pdf))]
    return request.make_response(pdf, headers=pdfhttpheaders)