как ограничить видимость контента сайта по группе odoo 13 - PullRequest
0 голосов
/ 20 июня 2020

У меня есть контент на веб-сайте, который является частью подписки. на основе подписки я добавлю пользователя в группу, как показывать контент на основе группы на домашней странице

также, чтобы скрыть некоторую часть страницы, это пользователь (логин)

мой код

  <template id="custom_header" inherit_id="website.layout" name="Custom Header">
    <xpath expr="//div[@id='wrapwrap']/header" position="attributes">
      <attribute name="id">my_header</attribute>
      <attribute name="group">base.group_public</attribute>
    </xpath>
  </template>

1 Ответ

1 голос
/ 03 июля 2020

Вы можете сделать это так, как это можно найти в addons / portal / views / portal_templates. xml.

                <div class="collapse navbar-collapse" id="top_menu_collapse">
                    <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>

метод _is_publi c () возвращает True, если «пользователь» не зарегистрирован, иначе false

...