odoo继承的model:
- BaseModel 是一切模型的基础
_name
:模型名称,类非继承父类时必须指定。
_description
:模型描述。
_rec_name
:在其他模型中引用此模型时显示的字段,不设置默认显示字段为name的字段值,如无name字段则显示"模块名,id"。
_log_access
:是否自动增加日志字段(create_uid,create_date,write_uid, write_date)。默认为True。
_auto
:是否在后台创建数据表,默认为True。
_table
:模型对应的数据表的名称,缺省时数据库对象名称与_name
指定值相同(.
替换为下划线)。
_sequence
:数据库id字段的序列。默认自动创建序列。
_order
:数据显示排序。所指定值为模型字段,按指定字段和方式排序结果集。
_inherit
:单一继承。值为所继承父类_name
标识。如子类不定义_name
属性,则在父类中增加该子类下的字段或方法,不创建新对象;如子类定义_name
属性,则创建新对象,新对象拥有父类所有的字段或方法,父类不受影响。
_inherits
:多重继承。子类通过关联字段与父类关联,子类不拥有父类的字段或方法,但是可以直接操作父类的字段或方法。( _inherits = {‘父类 _name’: ‘关联字段’} )
_constraints
:自定义约束条件。模型创建/编辑数据时触发,约束未通过弹出错误提示,拒绝创建/编辑。
_sql_constraints
:数据库约束。 - AbstractModel 是一个抽象模型不会在数据库创建对应表
- TransientModel对应的数据表中的数据系统会定时的清理;TransientModel的数据只能做临时数据使用,一般向导对象模型会声明成TransientModel