Odoo - 根据网站字段隐藏网站菜单

Odoo - hide a website menu base on website fields

我有一个由此代码定义的网站菜单:

        <record id="website_menu_apps" model="website.menu">
          <field name="name">Apps</field>
          <field name="url">/apps</field>
          <field name="parent_id" ref="website.main_menu" />
          <field name="sequence" type="int">19</field>
        </record>

和此代码定义的字段:

class Website(models.Model):
        _inherit = 'website'
        dedicate_apps_store = fields.Boolean(string='Dedicated Apps Store', default=True)

当用户将 website.dedicate_apps_store 设置为 False 时,如何使网站菜单消失?

<template id="custom_layout" inherit_id="website.layout" name="custom layout">
  <xpath expr="//ul[@id='top_menu']/t/t" position="attributes">
    <attribute name="t-if">submenu.name != 'Apps' or website.dedicate_apps_store</attribute>
  </xpath>
</template>

你继承webiste.layout并设置position="attributes"然后你就可以把你的条件写在属性标签里了。