Odoo: Comment faire pour hériter des éléments de menu (en faire des éléments de menu invisible)

J'ai besoin de supprimer (ou de rendre invisible) un élément de menu.
Je suppose que cela doit être fait avec un hériter et xpath.

Mais je ne suis pas sûr du nom, modèle et inherit_id que je devrais utiliser. Où puis-je trouver les valeurs exactes de ces?

Aussi, je ne sais pas comment utiliser xpath correctement pour cela.
Autant que je sache, il y a seulement des expressions pour les pages, les groupes et les champs?
(http://www.odoo.yenthevg.com/xpath-expressions-in-odoo-8/)

Le menu qui doit être éliminée est de Variantes de Produits:
Odoo: Comment faire pour hériter des éléments de menu (en faire des éléments de menu invisible)

Dans addons/product/product_view.xml j'ai trouvé quelque chose qui pourrait avoir à faire avec elle.

Ligne 1:

<menuitem id="base.menu_product" name="Product Variants" parent="base.menu_base_partner" sequence="9"/>

ligne 444-446:

<menuitem action="variants_action"
            id="menu_variants_action"
            parent="product.prod_config_main" sequence="10" />

La façon dont j'ai essayé de faire le point de menu invisible dans mon propre views.xml:

    <record model="ir.ui.view" id="menuproductvariants_inherit">
    <field name="name">name">product.prod_config_main</field>
    <field name="model">base.menu_product</field>
    <field name="inherit_id" ref="product.product_template_only_form_view" />
    <field name="arch" type="xml">
        <xpath expr="//menuitem[@string='Product Variants']" position='replace'>
        <menuitem name=""/>         
    </xpath>            
    </field>
</record>

L'erreur, il donne:

ParseError: "ValidateError
Field(s) `arch` failed against a constraint: Invalid view definition

Error details:
Element '<xpath expr="//menuitem[@string='Product Variants']">' cannot be located in parent view

Error context:
View `name">product.prod_config_main`
[view_id: 971, xml_id: n/a, model: base.menu_product, parent_id: 257]" while parsing /root/git/odoo/modulesdewieuw/dewieuw/views.xml:59, near
<record model="ir.ui.view" id="menuproductvariants_inherit">
        <field name="name">name"&gt;product.prod_config_main</field>
        <field name="model">base.menu_product</field>
        <field name="inherit_id" ref="product.product_template_only_form_view"/>
        <field name="arch" type="xml">
            <xpath expr="//menuitem[@string='Product Variants']" position="replace">
            <menuitem name=""/>         
        </xpath>            
        </field>
    </record>

Edit: Après les conseils sur la fabrication d'un nouveau groupe, je l'ai essayé.
J'ai créé un groupe "verborgenmenus" et a ajouté un utilisateur.

Dans mon xml, j'ai mis tout cela, quelque part:

<menuitem id="base.menu_product" name="Product Variants" parent="base.menu_base_partner" sequence="9" groups="verborgenmenus"/>

Il me donne l'erreur suivante:

    raise ValueError('External ID not found in the system: %s' % (xmlid))
ParseError: "External ID not found in the system: dewieuw.verborgenmenus" while parsing /root/git/odoo/modulesdewieuw/dewieuw/views.xml:34, near
<menuitem id="base.menu_product" name="Product Variants" parent="base.menu_base_partner" sequence="9" groups="verborgenmenus"/>

Ce qui est faux dans mon code?

Edit: je l'ai eu à la façon dont je voulais simplement en enlevant les utilisateurs du groupe Utilisabilité/Caractéristiques Techniques.

  • Un menuitem n'est pas à l'intérieur d'un ir.ui.view. C'est dans ir.ui.menu
InformationsquelleAutor RobbeM | 2015-08-12