Odoo8.0根据资料的条件来控制画面上的修改按钮显示

今天有网友在问,当达到某个条件的时候,资料的所有字段都变为只读,传统的方法是在view或model中,逐一对每个字段进行属性设置,这样比较麻烦。后来我在考虑,如果是把所有字段都变为只读,是不是只要屏蔽form界面上的修改按钮就可以了呢?只要用户不能点修改按钮,那相当于就是所有字段为只读了。

经过测试和阅读源码,我们通过如下方法来实现。

先下载安装二开的模块form_hide_edit

然后在增加的窗口动作位置加一个上下文参数,如下实例所示。

<record id="action_easy_genes" model="ir.actions.act_window">
     <field name="name">Information</field>
     <field name="res_model">model_name</field>
     <field name="view_type">form</field>
     <field name="view_mode">tree,form</field>
     <field name="context">{'form_no_edit':[('state','=','draft'),('sex','=','F')]}</field>
     <field name="help" type="html">
         <p class="oe_view_nocontent_create">
         </p>
         <p>
             Click to start creating a new
         </p>
     </field>
</record>

上下文中form_no_edit是固定的,后面加一个条件,条件的设置规范符合通用的domain规范即可。在浏览记录时,符合该条件的form视图将不显示“编辑”按钮。

你可能感兴趣的:(Odoo8.0根据资料的条件来控制画面上的修改按钮显示)