【问题标题】:how to add groups attribute in qweb template如何在 qweb 模板中添加组属性
【发布时间】:2017-06-17 10:17:24
【问题描述】:

我想像这样在 qweb 模板中添加组属性:

<t t-extend="UserMenu">
    <t t-jquery=".dropdown-menu" t-operation="replace">
        <ul class="dropdown-menu">
            <li><a href="#" data-menu="settings">Preferences</a></li>
            <li><a href="#" data-menu="account">My Odoo.com account</a></li>
            <li groups="custom_preference_menu.group_yook_about_menu"><a href="#" data-menu="about">About Odoo</a></li>
            <li><a href="#" data-menu="help">Help</a></li>
            <li><a href="#" data-menu="logout">Log out</a></li>
        </ul>
    </t>
</t>

但它不起作用。 我该如何解决这个问题?

【问题讨论】:

  • 你到底想达到什么目的?
  • @George Daramouskas 我想隐藏例如基于组的“A propos de odoo”菜单。请参阅screenshot上的图片
  • 您是否创建了安全组?并且工作完美?

标签: python-2.7 openerp odoo-8


【解决方案1】:

嗯,语法是正确的。您确定您使用 module_where_the_group_is_created.group_name 选择了正确的组吗?

【讨论】:

    【解决方案2】:

    这是一个不完整的答案。它将为非管理员用户隐藏Preferences 菜单项:

    xml:

        <t t-extend="UserMenu">
            <t t-jquery="div.dropdown-menu.dropdown-menu-right" t-operation="replace">
                <div class="dropdown-menu dropdown-menu-right" role="menu">
                    <a role="menuitem" href="#" data-menu="shortcuts" class="dropdown-item d-none d-md-inline-block">Shortcuts</a>
                    <a role="menuitem" href="#" data-menu="settings" class="dropdown-item" id="preference_menuitem">Preferences</a>
                    <a role="menuitem" href="#" data-menu="logout" class="dropdown-item">Log out</a>
                </div>
            </t>
        </t>
    

    js:

     odoo.define('pos_custom_ui.custom_menuitems', function (require) {
        "use strict";
    
        var config = require('web.config');
        var UserMenu = require('web.UserMenu');
    
        UserMenu.include({
            start: function () {
                var self = this;
                var session = this.getSession();
                if (!session.is_admin){
                    this.$('#preference_menuitem').hide();
                }
    
                this.$el.on('click', '[data-menu]', function (ev) {
                    ev.preventDefault();
                    var menu = $(this).data('menu');
                    self['_onMenu' + menu.charAt(0).toUpperCase() + menu.slice(1)]();
                });
                return this._super.apply(this, arguments).then(function () {
                    var $avatar = self.$('.oe_topbar_avatar');
                    if (!session.uid) {
                        $avatar.attr('src', $avatar.data('default-src'));
                        return Promise.resolve();
                    }
                    var topbar_name = session.name;
                    if (config.isDebug()) {
                        topbar_name = _.str.sprintf("%s (%s)", topbar_name, session.db);
                    }
                    self.$('.oe_topbar_name').text(topbar_name);
                    var avatar_src = session.url('/web/image', {
                        model:'res.users',
                        field: 'image_128',
                        id: session.uid,
                    });
                    $avatar.attr('src', avatar_src);
                });
            },
        });
    });
    

    web.assets_backend 中包含js 文件:

    <?xml version="1.0" encoding="utf-8"?>
    <odoo>
        <template id="custom_dashboard" inherit_id="web.assets_backend">
            <xpath expr="." position="inside">
                <script type="text/javascript" src="/pos_custom_ui/static/src/js/custom_menuitems.js"></script>
            </xpath>
        </template>
    </odoo>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-16
      • 1970-01-01
      • 2023-01-25
      • 2021-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多