跳至内容
菜单
此问题已终结
2 回复
6418 查看

How can I make a menuitemonly for base.group_sale_manager visible?

for example this:

if I make this, the other user with " only own leads " rights can see the menuitem only.

<menuitem id="real_menu_second_2" parent="section_main_menu_1" groups="base.group_sale_manager" action="button_action_addon"/>

形象
丢弃

Title of question is: "How can I make a **button** only for base.group_sale_manager visible?", even in question text you refer to **button**, and as you posted a code it appears that actually you're asking about menuitem and NOT about a button. Please correct your question title and a question itself, to make it clear what is it about. My answer below is for a button, not for a menuitem.

最佳答案

Hi,

You can do it by overriding fields_view_get() method. In this method you just have to check if sales manager group is assigned (using has_group() method of res.users object) to current user or not. If not then hide the button.

def fields_view_get(...):
# super call
# check if sales manager group is assigned to current user
# if not, hide the button (add invisible modifier to button)

 How to add modifiers?

形象
丢弃
最佳答案

You can use computed Boolean field for that,  include this field in your view as invisible="1" and make the button invisible depending on the value of the Boolean field. Here is the Boolean field itself:


is_sales_manager = fields.Booelan("Sales Manager", compute="compute_is_sales_manager")

@api.multi
def compute_is_sales_manager(self):
is_manager = self.env.user.has_group("base.group_sale_manager")
for rec in self:
rec.is_sales_manager = is_manager

so, if you make the button invisible depending on this Boolean field, then it should be visible only to users who belong to the "base.group_sale_manager" group.

形象
丢弃
相关帖文 回复 查看 活动
2
7月 16
4623
2
12月 19
3426
3
1月 19
5499
11
12月 18
10105
4
6月 16
5157