Javascript 如何为网站导航odoo 13创建自定义模板

Javascript 如何为网站导航odoo 13创建自定义模板,javascript,bootstrap-4,odoo,odoo-13,odoo-website,Javascript,Bootstrap 4,Odoo,Odoo 13,Odoo Website,如何为网站导航栏创建自定义odoo walker 类似于Wordpress允许创建html模板,odoo使用该模板添加菜单,以便我可以设计导航 <nav> <div class="logo"></div> <ul> <!-- odoo menu items---> <!-- formatting---> <!-- <li clas

如何为网站导航栏创建自定义odoo walker

类似于Wordpress允许创建html模板,odoo使用该模板添加菜单,以便我可以设计导航

<nav>
    <div class="logo"></div>
     <ul>
       <!-- odoo menu items---> 
       <!-- formatting---> 
       <!-- <li class="nav-item"><a href="$link"> $name </a></li>---> 
     </ul>
     <div>
       <ul>
          <li><a href="$myaccount_link">$name</a></li>
          <li><a href="$logout_link"> $name</a></li>
       </ul>
     </div>
</nav>

odoo中是否有类似的功能

如果没有,如何在JS中获得odoo中的所有活动菜单


这是一个解决方案,您可以在addons/portal/views/portal_templates.xml中找到代码

                <div class="collapse navbar-collapse" id="top_menu_collapse">
                    <!-- FIXME We want menu to open to the right by default (except cases handled in JS) -->
                    <ul class="nav navbar-nav ml-auto text-right" id="top_menu">
                        <li class="nav-item divider" t-ignore="true" t-if="not user_id._is_public()"/>
                        <li class="nav-item dropdown" t-ignore="true" t-if="not user_id._is_public()">
                            <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown">
                                <b>
                                    <span t-esc="user_id.name[:23] + '...' if user_id.name and len(user_id.name) &gt; 25 else user_id.name"/>
                                </b>
                            </a>
                            <div class="dropdown-menu js_usermenu" role="menu">
                                <a id="o_logout" class="dropdown-item" t-attf-href="/web/session/logout?redirect=/" role="menuitem">Logout</a>
                            </div>
                        </li>
                    </ul>
                </div>


方法\u is_public()返回True如果“用户”未登录,则返回false

这是一个解决方法,您可以在addons/portal/views/portal_templates.xml中找到代码

                <div class="collapse navbar-collapse" id="top_menu_collapse">
                    <!-- FIXME We want menu to open to the right by default (except cases handled in JS) -->
                    <ul class="nav navbar-nav ml-auto text-right" id="top_menu">
                        <li class="nav-item divider" t-ignore="true" t-if="not user_id._is_public()"/>
                        <li class="nav-item dropdown" t-ignore="true" t-if="not user_id._is_public()">
                            <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown">
                                <b>
                                    <span t-esc="user_id.name[:23] + '...' if user_id.name and len(user_id.name) &gt; 25 else user_id.name"/>
                                </b>
                            </a>
                            <div class="dropdown-menu js_usermenu" role="menu">
                                <a id="o_logout" class="dropdown-item" t-attf-href="/web/session/logout?redirect=/" role="menuitem">Logout</a>
                            </div>
                        </li>
                    </ul>
                </div>

方法\u is\u public()如果未记录“用户”,则返回True,否则返回false