如何在Open Erp 7中为特定组设置只读字段



我有一个字段,我想让它对组中的所有用户都是只读的,比如base.group_userA。任何其他用户都可以编辑和保存该字段。我该如何在开场白中做到这一点?。我已经为所有用户设置了所有CRUD访问权限。

'WO_NOTES' : fields.text("Description"), 

在xml 中

<field name="WO_NOTES"/>

我也遇到了同样的问题,只是我想只向组中的用户显示字段。我通过继承视图解决了这个问题,并对特定组进行了更改。

在你的情况下,它应该看起来像这样:

<?xml version="1.0"?>
<openerp>
    <data>
<record model="ir.ui.view"  id="view_id">
    <field name="name">view.id</field>
    <field name="model">your.model</field>
    <field name="inherit_id" ref="id_of_inherited_view"/>
    <field name="groups_id" eval="[(6, 0, [ref('base.group_userA') ])]"/>
    <field name="arch" type="xml">
        <field name="WO_NOTES" position="attributes">
            <attribute name="readonly">1</attribute>
        </field>
    </field>
</record>
    </data>
</openerp>

希望这能有所帮助!

---一个小的编辑澄清一点我的答案---

我假设您有自己的表单视图,可以对所有用户正常工作(WO_NOTES对所有用户都是可编辑的(。有了这种继承,更改将只发生在属于base.group_userA的用户身上,将其属性更改为只读(只发生在该字段上,也只发生在来自该组的用户上(。

<field name="WO_NOTES" position="attributes"> <attribute name="readonly">1</attribute></field>部分将在父视图中定位字段并使其只读。<field name="groups_id" eval="[(6, 0, [ref('base.group_userA') ])]"/>将此更改限制为指定的组。

相关内容

  • 没有找到相关文章

最新更新