Odoo- Скрыть меню веб-сайта, когда ни один пользователь не вошел в систему и наоборот
Я работаю над меню модуля веб-сайта Odoo, но я застрял в том, чтобы скрыть определенное меню, когда пользователь вышел из системы, и если какой-либо пользователь вошел в систему, оно должно отображаться.
Я пишу образец, чтобы показать, как я создал меню
<odoo>
<data noupdate="0">
<record id="furdo_portal_sale_order_menu" model="website.menu">
<field name="name">Sale Orders</field>
<field name="url">/my/orders</field>
<field name="sequence" type="int">1</field>
</record>
</data>
</odoo>
Здесь проблема, с которой я сталкиваюсь, заключается в том, что это меню заказа на продажу видно даже зарегистрированным пользователям. Может ли кто-нибудь помочь мне с кодом скрытия для пользователя, вышедшего из системы и видимого для пользователей, вошедших в систему?
Все должно быть на основе кода.
Заранее спасибо.
1 ответ
Решение
Получил мой ответ
<odoo>
<data>
<template id="custom_sign_in" customize_show="True" inherit_id="website.layout" name="Custom Sign In">
<xpath expr="//ul[@id='top_menu']" position="replace">
<ul class="nav navbar-nav ml-auto text-right" id="top_menu">
<li class="nav-item" t-if="website.user_id != user_id">
<a class="nav-link" role="menuitem" t-attf-href="/my/orders">
<span>Sale Order</span>
</a>
</li>
<li class="nav-item divider"></li>
<li class="nav-item dropdown" t-if="website.user_id != user_id">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown">
<b>
<span t-esc="user_id.name"/>
</b>
</a>
<div class="dropdown-menu js_usermenu" role="menu">
<a href="/my/home" role="menuitem" class="dropdown-item">My Account</a>
<a id="o_logout" class="dropdown-item" role="menuitem" href="/web/session/logout?redirect=/">Logout</a>
</div>
</li>
<li class="nav-item" t-if="website.user_id == user_id">
<a class="nav-link" href="/web/login">
<b>Sign in</b>
</a>
</li>
</ul>
</xpath>
</template>
</data>
</odoo>