赞
踩
字段=fields.类型(related=“某个字段.类字段”,
store=true/false)
例如,
user_id = fields.Many2one(
‘res.users’,
related=‘partner_id.user_id’,
string=‘Sales Representative’,
readonly=True, store=True)
related字段可以简记为“带出字段”,由当前模型的某个关联类型字段的某个字段带出值。
related使用时候,需要在相应的py文件字段上加readonly属性
odoo中默认,active字段为False的记录上不显示的。
a.通过odoo提供的搜索视图来实现:
自定义筛选——active字段——为假
b.打开debug,向动作context中添加 {‘active_test’: False}
或者在后端xml代码中,加入。
{‘active_test’: True}
1)模型有多个同种视图时,指定打开具体的视图
{‘tree_view_ref’:‘模块.view_tree_XXX’,
‘form_view_ref’:‘模块.view_form_XXX’}
<field name=“search_view_id” ref="view_search_XXX/>
2)在跳转的同时启用过滤器
{‘search_default_过滤器名’: [active_id]/True}
3)传递数据,可用于domain中作为表达式的值
{“key”:value}
4)指定跳转过去的视图记录的分组方式
{‘group_by’: [‘字段’,‘…’];‘group_by_no_leaf’:1}
column_invisible 只有在odoo12及其以上才可使用
<field name="Approve_Date" attrs="{'column_invisible':[('parent.Department','=','HRP')]}"/>
<tree limit=200>
<field name="name"/>
</tree>
<xpath expr="//tree" position="attributes"> <attribute name="limit">200</attribute>
</xpath>
ODOO支持的视图类型:form、tree、search …
支持的定位方法:见xpath定位方法
<xpath expr="//page[@name='name']" position="replace">
<field name="name"/>
</xpath>
支持的规则:before、after、replace、inside、attributes
插入:
position=‘before’
position=“after”
替换:
position=“replace”
内部创建:
position=“inside”
修改属性:修改属性能够实现的功能,不要使用 replace
position=“attributes”
Odoo的模型对象在odoo模块的models.py文件中,最基础的对象是BaseModel;
Odoo的模型对象有三个:AbstractModel、Model、TransientModel
BaseModel是一切模型的基础
AbstractModel 是一个抽象模型不会在数据库创建对应表,Model可以继承AbstractModel,AbstractModel为多个Model提供相同属性的统一声明
Model继承自AbstractModel,但是Model的 _auto=True , _abstract = True ;
Model的模型对象在模块安装或升级的时候会自动在数据库中创建相应的数据表
TransientModel继承自Model,但是TransientModel的_transient = True,TransientModel是一种特殊的Model,TransientModel对应的数据表中的数据系统会定时的清理;TransientModel的数据只能做临时数据使用,一般向导对象模型会声明成TransientModel
–继续添加
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。