【发布时间】:2017-12-26 16:34:12
【问题描述】:
我想继承 XML 中的表单视图以设置不可见的某些字段,但有时我不会安装该模块。
如何解决?
【问题讨论】:
标签: python python-2.7 openerp odoo-9 odoo-10
我想继承 XML 中的表单视图以设置不可见的某些字段,但有时我不会安装该模块。
如何解决?
【问题讨论】:
标签: python python-2.7 openerp odoo-9 odoo-10
您可以将此代码添加到您要修改的视图的模型中:
@api.depends()
def _compute_module_x_installed(self):
for record in self:
module = self.env['ir.module.module'].search([
('name', '=', 'the_module_name')
])
if module and module.state == 'installed':
record.update({
'module_x_installed': True,
})
module_x_installed = fields.Boolean(
compute='_compute_module_x_installed',
string='Is X installed?',
)
这样你就会有一个字段来指示你是否安装了模块。
【讨论】:
<attribute name="invisible">1</attribute>)。该辅助模块必须依赖于(在__manifest__.py 中)您的主模块和创建您使不可见字段的模块(将安装或不安装的模块)。
还可以借助ir_module_module数据库表来获取模块的当前状态。
ir.module.module model Odoo 创建一个名为 ir_module_module 的新数据库表,我们可以在其中使用 Pgadmin 工具通过 SQL Query 搜索模块的状态
select state from ir_module_module where name='Your_module_name(technical_name)';
如果我们得到的结果是 ' installed ' in out query 这意味着 我们的模块安装在我们的数据库中。
【讨论】: