在Odoo中隐藏菜单项?

2024-04-29 06:08:17 发布

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

我想隐藏“记帐”菜单中的菜单项这是完整路径: 会计/图表/税单。我想把这个隐藏起来,所以我已经创建了自定义xml文件。但是我无法隐藏这个文件。相反,我可以用tag删除这个菜单项吗??

有谁能帮我解决这个问题吗?谢谢


Tags: 文件路径tag图表菜单xml记帐菜单项
3条回答

使用fields_view_get方法也可以实现相同的效果

请尝试在操作的上下文中传递一些值 例如:

<record id="action_sample_record" model="ir.actions.act_window">
    <field name="name">student record</field>
    <field name="res_model">student.student</field>
    <field name="view_type">form</field>
    <field eval="False" name="view_id"/>
    <field name="view_mode">tree,form</field>
    <field name="context">{'student_master':True}</field>
</record>

现在重写fields_view_get方法

@api.model
def fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False):
    res = super(StudentStudent, self).fields_view_get(view_id, view_type, toolbar=toolbar, submenu=submenu)
    if 'student_master' in self._context.keys():
        res['toolbar'] = {'print': [], 'action': [], 'relate': []}
    return res

希望这对你有帮助。我的代码示例是针对新api的,但您也可以对旧版本执行相同的操作。

使用xml文件创建一个组,必须首先在\u openerp\uuuu.py中添加该组。

<?xml version="1.0" encoding="utf-8"?>
<openerp>
  <data noupdate="1">
    <record id="new_group_id" model="res.groups">
      <field name="name">New Group Name</field>
      <field name="category_id" ref="base.module_category_hidden"/>
      <field name="users" eval="[(4, ref('base.user_root'))]"/>
    </record>
  </data>
</openerp>

并创建另一个xml文件,在其中用该xml代码更新该菜单项。

<record id="account.menu_action_tax_code_tree" model="ir.ui.menu">
  <field name="groups_id" eval="[(6, 0, [ref('new_group_id')] )]"/>
</record>

这足以隐藏菜单项。

<record id="group_hide_menu"  model="res.groups">
    <field name="name">Hide Menus</field>
    <field name="category_id" ref="base.module_category_hidden"/>
    <field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>

<record id="hr_evaluation.menu_open_view_hr_evaluation_tree" model="ir.ui.menu">
    <field name="groups_id" eval="[(6,0,[ref('group_hide_menu')])]"/>
</record>
<record id="hr_evaluation.menu_open_hr_evaluation_interview_requests" model="ir.ui.menu">
    <field name="groups_id" eval="[(6,0,[ref('group_hide_menu')])]"/>
</record>

相关问题 更多 >