我正在尝试在odoo应用程序中创建一个新联系人,但它显示了此错误:
KeyError: 'ir.values'
问题与此功能有关。
class ResPartner(models.Model):
_inherit = 'res.partner'
def _default_credit_limit(self):
return self.env['ir.values'].get_default('account.config.settings', 'credit_limit')
我不明白这个问题
能否请你帮我
答案 0 :(得分:1)
KeyError:“ ir.values”
如果在Odoo 12上运行self.env['ir.values']
,则会收到上述错误,因为ir.values
模型在Odoo 12中不存在。
ir.values
模型已删除,并替换为ir.default
。例如:
self.env['ir.default'].get('sale.order', 'sale_order_template_id')
您可以看到相关文件in the Odoo core code或the commit where most of that Model was added。
答案 1 :(得分:0)
您确定此设置是否已存在?我不确定,但是找不到,我知道在Odoo 8中它存在。除了事实之外,我认为它不再存在:account.config.settings
在100%肯定不存在,因为设置模型已重构为res.config.settings
。
实际上,合作伙伴字段credit_limit
也消失了。因此,如果您要使用它并在代码外使用默认值,请使用ir.default
来实现所需的行为。