我试图覆盖向导类上的单个方法,当用户单击submit时执行该方法。
account_consolidation_custom/wizard/CustomClass.py
class AccountConsolidationConsolidate(models.TransientModel):
_name = 'account.consolidation.consolidate_custom'
_inherit = 'account.consolidation.base'
def get_account_balance(self, account, partner=False, newParam=False):
....my custom code...帐户合并自定义/__清单_.py
{
'name': "account_consolidation_custom",
'summary': """""",
'description': """
""",
'author': "My Company",
'website': "http://www.yourcompany.com",
'category': 'Uncategorized',
'version': '0.1',
'depends': ['base','account_consolidation'],
# always loaded
'data': [],
}该方法的名称与原来的完全相同,但是当我单击submit按钮时,似乎什么都没有发生,仍然是从基本模块而不是自定义调用方法。
您知道如何只得到一个重写的方法,而不是整个向导类吗?
发布于 2020-01-14 18:05:25
当向私有属性_name和_inherit提供不同的值时,您将创建一个新的向导/瞬态模型。相反,您应该对这两个属性使用原始的odoo模型名称account.consolidation.consolidate,或者完全删除_name属性。
Odoo有自己的继承机制,它由三个类属性_name、_inherit和_inherits管理。
发布于 2020-01-14 20:17:26
我能够使用以下代码使其工作:
class AccountConsolidationConsolidate(models.TransientModel):
_inherit = 'account.consolidation.consolidate'
def get_account_balance(self, account, partner=False, newParam=False):
....my custom code...在此之后,我能够覆盖基本方法。
https://stackoverflow.com/questions/59738197
复制相似问题