Onchange和dependens方法,其自身包含NewObjectId作为记录

2024-05-20 23:58:00 发布

您现在位置:Python中文网/ 问答频道 /正文

据我所知,decorators@onchange和@depends的方法的执行过程中,几乎所有参数'self'都是以下格式的记录集:

你知道吗资源合作伙伴(1,2,3)(例如在本例中为资源合作伙伴(型号)

表示将应用修饰方法的记录的内容。你知道吗

如果ORM没有恢复数据库中的id,那是因为它是一个尚未记录的元素。你知道吗

这是我从关于奥多理论的书中学到的,到目前为止对我有用。你知道吗

两周前,在更新了第三方模块之后,我开始注意到在我自己的模块中,自我论证总是返回给我(例如:

你知道吗资源合作伙伴(odoo.models.NewId对象位于0x7f8c0f604768,)

对于这些装饰器的每个方法也是如此。你知道吗

对我来说,这表示它不恢复数据库中的id,只返回内存中的地址。你知道吗

我尝试了很多方法,删除所有自己的模块并重新克隆它们,或者创建一个新的数据库并只安装自己的模块,或者创建一个新的基础但只使用Odoo模块并使用scaffold命令创建的干净模块,或者删除IDE并重新安装它,直到在另一台计算机上的实例中进行测试并安装我自己的模块。但我总是得到同样的结果。你知道吗

在这两周之前,我自己模块中的方法正确地使用了self。唯一的更新是第三方模块。你知道吗

另一件有趣的事情是,第三方模块和Odoo模块都会恢复自变量中的记录集(根据理论),但不会恢复我自己的模块(甚至不会恢复使用scaffold命令构建的基本模块)。你知道吗

我的问题是: -为什么变量self这样使用记录? -如果是,我如何更正此错误?你知道吗

提前多谢!!:)


Tags: 模块方法odoo命令selfdecoratorsid数据库
1条回答
网友
1楼 · 发布于 2024-05-20 23:58:00

现在对我来说onchange方法很好。但在dependens方法中,我知道自变量总是有一个记录集。这些图像显示了一个使用scaffold命令创建的简单模块,并使用Pycharm中的调试系统。我刚刚用@depends decorator停止了一个方法,结果就是这样。你知道吗

Pycharm environment

server backend

相关问题 更多 >