在openerp中按钮可见性

时间:2012-04-30 00:07:17

标签: python openerp

我正在使用openerp 5.16 web。

我们是否可以根据登录用户隐藏按钮。

或如何根据用户组控制群组可见性。

4 个答案:

答案 0 :(得分:1)

  • 根据登录用户: 你可以使用变量'uid',但我认为你不能做'uid.name'或'uid.groups_id'。所以更简单的方法将是第二个。
  • 视群而定 示例:我们有一些用户是经理而另一些用户没有,创建一个组'经理'(在xml文件中!!!)并将此组添加到经理。现在更改xml中的字段,如下所示:

    <field name="name" string="this is the string" groups="my_module.my_reference_to_the_group"/>

该字段仅对经理

可见

答案 1 :(得分:1)

根据用户组设置可见性是实现此目的的方法。将groups属性添加到要隐藏的控件中。一个很好的例子是销售订单屏幕的Extra Info tab。仅当用户是扩展UI组的成员时才可见。

<page groups="base.group_extended" string="Extra Info">
    <field name="th_weight"/>
    <field name="address_allotment_id" select="2"/>
    <separator colspan="4" string="Properties"/>
    <field colspan="4" name="property_ids" nolabel="1"/>
</page>

答案 2 :(得分:1)

您必须创建一个新组,例如“按钮可见”。

然后在此组中添加要向其显示按钮的用户。

然后在按钮上添加此组,如下所示:

<button name="xyz" groups="Button Visible" .../>

答案 3 :(得分:0)

在OpenERP组中,视图元素的高级安全性几乎在XML中的所有视图元素上都可以找到groups属性,因此您可以使用Group属性。 例如如果您在模块中定义了一些Group / s,那么您可以在视图上使用标记按钮的group属性,如

<button name="name" type="object|workflow|action" string="" groups="<your_group_external_id>,<module.group_external_id>" />

其中external_id代表记录标记上定义的唯一XML。所以现在只有用户博客或接收分配的组才能看到视图中的按钮。

问候