如何在树视图中隐藏自定义按钮

How to hide a custom Button in tree view

我的列表视图中有一个自定义按钮 "View All",我希望它只对具有特定组访问权限的用户可见,我该如何实现?

我尝试将组属性添加到按钮,但没有用,

<template xml:space="preserve">
    <t t-extend="ListView.buttons">
        <t  t-jquery="button.o_list_button_add" t-operation="before">
            <button t-if="widget.modelName == 'leave.request.allocation'" type="button" class="btn btn-primary btn-sm oe_filter_button" accesskey="f" groups="hr_holidays.group_hr_holidays_manager">
                View All
            </button> 
        </t>
    </t>

在 ListView 上,它们具有 render_buttons 功能,具有 js 级别。 因此,您可以添加他们的条件来检查是否有您的组的用户,并根据该代码显示按钮和隐藏。 给你:

var ListView = require('web.ListView');
ListView.include({
    render_buttons: function($node) {
        this._super.apply(this, arguments);
        this.session.user_has_group('Your Group').then(function(has_group) {
            if (has_group) {
                // Do Something
            } else {
                // Do Something
            }
        });
    },
});

谢谢