文档来源:http://www.odoodev.cn/ ;https://www.bilibili.com/video/BV1m54y167ET?p=2&spm_id_from=pageDriver
<record id="epidemic_record_form_view" model="ir.ui.view">
<field name="name">疫情记录</field>
<field name="model">epidemic.record</field>
<field name="arch" type="xml">
<form>
<sheet>
<group>
<group>
<field name="name" string="姓名" required="1"/>
<field name="is_ill" string="是否确诊"/>
<field name="within_or_abroad" string="境内/境外" required="1"/>
<field name="begin_lsolation_date" string="起始隔离日期" attrs="{'required': [('is_ill', '=', False)], 'invisible': [('is_ill', '=', True)]}"/>
<field name="lsolation_mode" string="隔离方式" attrs="{'required': [('is_ill', '=', False)], 'invisible': [('is_ill', '=', True)]}"/>
<field name="ill_type" string="感染方式" attrs="{'required': [('is_ill', '=', True)], 'invisible': [('is_ill', '=', False)]}"/>
<field name="date" string="确诊日期" attrs="{'required': [('is_ill', '=', True)], 'invisible': [('is_ill', '=', False)]}"/>
</group>
<group>
<field name="state" string="省" required="1"/>
<field name="city" string="市" required="1"/>
<field name="county" string="区/县"/>
<field name="street" string="具体地址" required="1"/>
<field name="create_user_id" string="填报人" readonly="1"/>
</group>
</group>
<notebook>
<page string="说明">
<field name="note" placeholder="其他信息"/>
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record id="epidemic_record_search_view" model="ir.ui.view">
<field name='name'>疫情记录</field>
<field name="model">epidemic.record</field>
<field name="arch" type="xml">
<search>
<field name="name"/>
<field name="state"/>
<filter string="已确诊" name="is_ill" domain="[('is_ill', '=', True)]"/>
<filter string="未确诊" name="is_ill" domain="[('is_ill', '=', False)]"/>
<!-- <filter string="Confirmed Orders" name="confirmed" domain="[('state', 'in', ['sale', 'done'])]"/>-->
<group expand="1">
<filter string="是否确诊" name="is_ill" context="{'group_by': 'is_ill'}"/>
<filter string="填报人" name="create_user_id" context="{'group_by': 'create_user_id'}"/>
</group>
</search>
</field>
</record>
增加快捷搜索使用field标签 增加快捷筛选使用 filter标签,搭配domain属性 增加快捷分组使用filter标签,搭配context使用
fields.Boolead()
user_id = fields.Many2one(‘res.users’),参数为目标模型名称
note = fields.Text(), 文本类型字段
readonly 只读 required 必填 invisible 隐藏 attrs根据条件动态设置字段属性,attrs=’{‘invisible’: [(‘is_ill’, ‘=’, True)], ‘required’: [(‘is_ill’, ‘=’, False)]}’
default属性可以是固定的值,也可以是哦一个函数(根据需求以及字段类型)
default=’value’
default=_default_fields_value def _default_fields_value(self) return value create_user_id = fields.Many2one(‘res.users’, string=’创建人’, default=lambda: self, self.env.uid)