【零散技术】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-卜永19 天前
odoo阿里云大模型多字段内容翻译
阿里云·odoo·大模型翻译
一只花里胡哨的程序猿19 天前
odoo18应用、队列服务器分离(SSHFS)
运维·服务器·odoo
一只花里胡哨的程序猿1 个月前
odoo打印pdf速度慢问题
pdf·odoo
向上的车轮1 个月前
Odoo与Django 的区别是什么?
后端·python·django·odoo
odoo-卜永2 个月前
ubuntu24.01安装odoo18
odoo
Sapphire~3 个月前
odoo-059 xml中字段上写 domain 和 filter_domain 什么区别
xml·odoo
Odoo老杨3 个月前
Odoo最佳业务实践:从库存管理重构到全链路协同
odoo·数字化转型·erp·库存管理·企业信息化
Sapphire~4 个月前
odoo-054 one2many 字段新增时检查上一行某个字段是否填写
python·odoo
Odoo老杨5 个月前
GitHub排名第一的开源ERP项目:Odoo生产计划与执行的功能概述
odoo·数字化转型·erp·mes·企业信息化
FREE_QIU5 个月前
【Odoo】Pycharm导入运行Odoo15
pycharm·odoo