首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >odoo模块中的扩展向导,具有超级功能和非覆盖功能

odoo模块中的扩展向导,具有超级功能和非覆盖功能
EN

Stack Overflow用户
提问于 2020-02-14 18:32:31
回答 1查看 104关注 0票数 1

我在模块中添加了一些新字段,目前我复制了整个api.onchange。请参见代码:

代码语言:javascript
复制
` @api.onchange('company_id')
    def _onchange_company_id(self):
        for wizard in self:
            wizard.logo = wizard.company_id.logo
            wizard.report_header = wizard.company_id.report_header
            wizard.report_footer = wizard.company_id.report_footer
            # NEW: wizard.report_footer1 = wizard.company_id.report_footer1
            # NEW: wizard.report_footer2 = wizard.company_id.report_footer2
            wizard.paperformat_id = wizard.company_id.paperformat_id
            wizard.external_report_layout_id = wizard.company_id.external_report_layout_id
            wizard.font = wizard.company_id.font
            wizard.primary_color = wizard.company_id.primary_color
            wizard.secondary_color = wizard.company_id.secondary_color
            wizard_layout = wizard.env["report.layout"].search([
                ('view_id.key', '=', wizard.company_id.external_report_layout_id.key)
            ])
            wizard.report_layout_id = wizard_layout or wizard_layout.search([], limit=1)

            if not wizard.primary_color:
                wizard.primary_color = wizard.logo_primary_color or DEFAULT_PRIMARY
            if not wizard.secondary_color:
                wizard.secondary_color = wizard.logo_secondary_color or DEFAULT_SECONDARY

正如你所看到的,我不想把所有的东西都复制到我的模块中,只想用SUPER2扩展这2行新行。有没有人能教我怎么做。亲切的问候

附言:我是这个编程和堆栈溢出世界的新手,如果我的问题可能令人困惑甚至愚蠢,我很抱歉^^。

EN

回答 1

Stack Overflow用户

发布于 2021-05-05 00:20:03

很简单。如果你覆盖了一个方法,那么你可以用super()或super(YourClassName,self)来调用它。只需检查被覆盖的方法是否返回任何内容。

代码语言:javascript
复制
    @api.onchange('company_id')
    def _onchange_company_id(self):
       result = super(YourClassName, self)._onchange_company_id()
       for wizard in self:
            wizard.report_footer1 = wizard.company_id.report_footer1
            wizard.report_footer2 = wizard.company_id.report_footer2
       return result
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60224560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档