【零散技术】Odoo17通过Controller下载PDF

序言:时间是我们最宝贵的财富,珍惜手上的每个时分

Odoo作为一款开源ERP,拥有极佳的拓展性,Odoo的Controller框架也让它具备了作为微信小程序后端的能力,那么就存在 需要通过小程序来下载PDF的业务情况。

目录

1.功能代码

[1.1 manifest 设置](#1.1 manifest 设置)

[1.2 _show_report 参数](#1.2 _show_report 参数)


话不多说,我们直接上代码

1.功能代码

python 复制代码
from odoo.addons.portal.controllers.portal import CustomerPortal
class PODW(CustomerPortal):
    @http.route(['/ro/client/pdf/v1'], type='http', auth="public", website=True, cors='*')
    def RoClientPdfV1(self, **kw):
        model = request.env['ro.order'].sudo().browse(int(kw.get('id')))
        return self._show_report(model=model,
                                 report_type='pdf', report_ref='ro_base.action_ro_report',
                                 download='download')
1.1 manifest 设置

__manifest.py中必须depends【portal】模块

python 复制代码
'''

'author': "成都睿鸥",
'category': '',
'version': '0.1',
'depends': ['mail','portal'],

'''
1.2 _show_report 参数

最关键的方法为 _show_report() ,我们 一定不要搞混了其中的参数,否则将无法下载。

一定要注意的是:report_ref 中的值,是我们打印PDF的action,一定要确认对应模型的打印功能正常,否则无法使用。

在Odoo管理端即可进行打印功能的确认,此处可以打印,那么action即为可用状态。通过访问url,即可下载对应的PDF了

相关推荐
odoo中国3 天前
如何在 Odoo 中从 XML 文件调用函数
xml·odoo·odoo开发·调用函数
odoo中国6 天前
Odoo 19 中的基础视图有哪些?
odoo·odoo19·基础视图
李怀瑾20 天前
在Odoo18中实现多选下拉框搜索功能
odoo
Odoo老杨1 个月前
Odoo全球领先的开源ERP:助力洛民塑料激活民族品牌拓界出海
odoo·erp·中小企业数字化
odoo-卜永4 个月前
odoo阿里云大模型多字段内容翻译
阿里云·odoo·大模型翻译
一只花里胡哨的程序猿4 个月前
odoo18应用、队列服务器分离(SSHFS)
运维·服务器·odoo
一只花里胡哨的程序猿4 个月前
odoo打印pdf速度慢问题
pdf·odoo
向上的车轮4 个月前
Odoo与Django 的区别是什么?
后端·python·django·odoo
odoo-卜永5 个月前
ubuntu24.01安装odoo18
odoo
Sapphire~6 个月前
odoo-059 xml中字段上写 domain 和 filter_domain 什么区别
xml·odoo