【发布时间】:2018-11-13 11:35:31
【问题描述】:
我是 odoo 新手,我在 odoo12 中开发了一个小型自定义模块。问题是安装模块后我无法在应用切换器页面中看到我的自定义模块。 (下面我给出了图片链接,安装后我无法看到我创建的模块)。
【问题讨论】:
我是 odoo 新手,我在 odoo12 中开发了一个小型自定义模块。问题是安装模块后我无法在应用切换器页面中看到我的自定义模块。 (下面我给出了图片链接,安装后我无法看到我创建的模块)。
【问题讨论】:
第一步是你必须定义一个菜单项,如果你不设置一个“父项”,它将是一个根菜单,因此会出现在应用程序抽屉中。
<menuitem
id="model_menu_root"
name="Module Menu"
web_icon="module_name,static/description/icon.png"
groups="base.group_user"
sequence="6"
/>
您可能希望有子菜单来访问您的模型,他们将使用此菜单作为其父级。
<menuitem name="Model Name" id="menu_1_list" parent="model_menu_root"
action="action_window"/>
菜单指的是窗口动作,它控制模型的显示方式。
<record model="ir.actions.act_window" id="action_window">
<field name="name">Model Name</field>
<field name="res_model">module_name.model_name</field>
<field name="view_mode">tree,form</field>
</record>
您需要定义一些安全规则,否则菜单不会出现。这些在 ir.model.access.csv 文件中进行控制,该文件必须在 __manifest__.py 文件中声明。在以前的版本中,跳过此步骤可以用于测试目的,因为管理员用户将能够看到所有模型,但 这似乎在 v12 中发生了变化,您需要在菜单可见之前定义安全规则。 odoo 开发者文档https://www.odoo.com/documentation/12.0/reference/security.html
中解释了安全规则顺便说一句,对于这样的问题,我通常首先会查看 GitHub 上的 Odoo 源代码。您可以看到他们如何在每个模块上实现根菜单和安全规则,并为您的模块进行模拟。
【讨论】: