日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

odoo13中的模型类(模型属性、字段属性、字段类型)

發布時間:2024/9/30 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 odoo13中的模型类(模型属性、字段属性、字段类型) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

1.模型屬性

2.字段類型

3.字段通用參數屬性

1.模型屬性

模型屬性解釋
_name

模型名稱。使用點表示法。規范命名帶模塊命名空間,格式:模塊名.xxx.xxx.xxx;

_description

模型非正式名稱、描述。模型的顯示名稱

_inherit

用于模型繼承。屬性值為字符串或者字符串數組。

(1)當屬性_inherit值為字符串,如果_name屬性值缺省或者等于_inherit值時,當前類會繼承_inherit值名稱的模型的類的屬性,模型屬性覆蓋繼承。

(2)當屬性_inherit值為字符串數組(此時_name屬性不能缺省)或者_inherit值與_name屬性值不相等時,會得到一個_name值的新模型,新模型繼承_inherit值中的所有模型的類的屬性。

_inherits

用于組合繼承。值類型為字典,格式:{'parent_model':?'m2o_field'},parent_model:繼承模型名稱,m2o_field:當前模型關聯繼承模型的外鍵字段。

這種繼承方式,子模型繼承父模型所有屬性,父模型必需為持久化模型,數據庫持久化表父子模型獨立,子模型的表字段'm2o_field'外鍵表是父模型表。

_auto

是否建立數據庫表標識。模型類型models.Model、models.TransientModel默認為True

_table

數據庫表名。當模型屬性_auto=True時,模型會在數據庫表建立屬性_table值的表名。當_table值缺省時,_table默認值為屬性_name將點號.替換成下劃線_的值。

_sequence

模型數據表主鍵id的序列名稱。_sequence屬性缺省時,_sequence默認值為屬性_table值拼接字符串'_id_seq'。

以另外一個表中的id,后面進行自增,默認是本表,修改別的表的id開始自增是,模型類_id_seq, 注意模型類中的點換成下劃線
_sql_constraints

表約束設置。列表類型,格式:[(name,?sql_def,?message)]。

_transient

臨時模型標識。模型類型models.TransientModel默認為True

_rec_name

數據行記錄標簽字段。標識行數據,用于下來列表的名稱顯示,以及查詢。

_order設置該模型展示時默認的排序字段

2.字段類型

字段類型解釋

fields.Boolean

布爾類型

fields.Integer

整數類型

fields.Float

浮點數類型。

特有參數digits:精度,值類型為tuple(int,int)或str。

當digits值為元組時,tuple(整數位數,小數精度位數);

當digits值為字符串時,精度取模型decimal.precision中name為digits值的行的精度設置。

fields.Monetary

貨幣類型。

特有參數currency_field:貨幣字段。

currency_field值缺省時,模型必須存在currency_id或x_currency_id字段,否則拋錯。

fields.Char

字符串類型。

特有參數size:長度。限制字符長度VARCHA(size),缺省則創建的表字段不做長度限制VARCHAR。

特有參數trim:修整。默認為True,去掉字符串前后的空格。

fields.Text

文本類型。

fields.Html

Html類型。前端默認使用富文本編輯器錄入。

fields.Date

日期類型。

fields.Datetime

時間類型。

fields.Binary

二進制類型。用于文件存儲。

fields.Image

圖片類型。

特有參數max_width:最大寬度。

特有參數max_height:最大高度。

特有參數verify_resolution:分辨率。默認TRUE,開啟驗證。

fields.Selection

列表類型。

特有參數selection:列表值。值格式:[(value,?label),?(value,?label)],例如:selection?=??[('a',?'A'),?('b',?'B')]???

特有參數selection_add:擴展列表值。該參數只能在繼承模型使用,不能和selection參數同時存在。值格式同selection。

特有參數validate:數據校驗。默認True,開啟校驗。

fields.Reference

參考字段類型。該類型是selection類型的延伸,用于存儲關聯表數據行。

特有參數selection:列表值。值格式:[(model_value,?label),?(model_value,?label)],model_value必須為已存在的模型名稱。例如:selection?=??[('ir.actions.report',?'ir.actions.report'),('ir.actions.act_window',?'ir.actions.act_window'),]???

fields.Many2one

多對一字段類型。表關聯多對一結構。

特有參數comodel_name:關聯模型。必輸,設置字段關系的外鍵模型。

特有參數ondelete:關聯模型刪除數據時的級聯操作。值:'set?null',置空;'restrict',限制;'cascade',級聯刪除。

特有參數auto_join:聯立查詢。默認False,設置為True時,模型查詢數據時會做關聯表查詢。

特有參數delegate:繼承引用。默認為False,設置為True時等同于加模型中加上_inherits屬性

特有參數domain:數據篩選條件。odoo框架獨有數據查詢格式,常用值格式[(field_name,?operator,?value)]

特有參數context:數據查詢上下文。值類型為字典

特有參數check_company:多公司數據屏蔽。默認為False,不開啟屏蔽。當domain參數缺省且模型存在company_id(公司)字段時可以設置為True,頁面數據篩選添加公司數據屏蔽。

fields.Many2oneReference

多對一引用字段類型。基類為整形。

特有參數model_field:模型值字段。必須,值為填寫模型的字段。

fields.One2many

一對多字段類型。和fields.Many2one多對一字段類型相對應。

特有參數comodel_name:關聯模型。必輸,設置使用當前模型為外鍵模型的Many2one字段所在模型。

特有參數inverse_name:反向字段名稱。必輸,設置使用當前模型為外鍵模型的Many2one字段。

特有參數domain:參考fields.Many2one。

特有參數context:參考fields.Many2one。

特有參數auto_join:參考fields.Many2one。

特有參數limit:查詢form頁面默認顯示行數。缺省默認無限制。

fields.Many2many

多對多字段類型。多對多表結構設置。

特有參數comodel_name:關聯模型。必輸,設置字段關聯的多對多模型。

特有參數relation:關系表。必輸,多對多關系的中間表。

特有參數column1:關系表中存儲當前表主鍵的字段名。

特有參數column2:關系表中存儲當對方表主鍵的字段名。

特有參數domain:參考fields.Many2one。

特有參數context:參考fields.Many2one。

特有參數auto_join:參考fields.Many2one。

特有參數check_company:參考fields.Many2one。

特有參數limit:查詢form頁面默認顯示行數。缺省默認無限制。

3.字段通用參數屬性

屬性解釋

string

頁面顯示的字段標簽名稱。缺省則顯示字段本身。

help

頁面顯示的字段提示信息。缺省則顯示字段本身。

readonly

字段只讀參數。默認為False,設置為True時,頁面該字段不可編輯

required

字段必輸參數。默認為False,設置為True時,頁面該字段必輸,數據表該字段不能為空。

index

字段索引參數。默認為False,設置為True時,數據表該字段建立索引。

default

字段默認值參數。缺省為空。可設置固定值或者帶返回值方法。

states

字段頁面狀態控制參數。值為字典,根據state字段的值控制當前字段頁面的編輯、必輸和顯示狀態。

groups

權限組參數。默認為空,可以配置權限組的外部id,該字段受權限控制,只能對應組可讀寫。

company_dependent

多公司參數。默認為False,設置為True時,該字段不會在數據表中建立字段,數據存儲在ir.property模型表,根據不同公司存儲不同值。

copy

可復制參數。默認為True,行記錄復制時復制該字段的值;設置為False時,行記錄復制時不進行值復制,取默認值賦值。

store

可存儲參數。普通字段默認為True,字段值存儲數據庫表中。computed字段,默認為False,不在數據庫表中存儲字段的值。

group_operator

分組聚合函數。只有數字類型字段生效。默認SUM,執行數據分組查詢時使用的聚合函數。

compute

計算字段參數。設置該參數的字段為計算字段,該字段的值由配置的計算方法計算得出。

compute_sudo

計算超級權限參數。設置compute參數時使用,默認為False,設置為True時,計算過程不做權限校驗。store=True時默認為True。

inverse

復制函數參數。設置compute參數時使用,compute字段默認不進行數據存儲,當設置該參數時,可以調用設置的方法進行數據賦值。

search

復制函數參數。設置compute參數時使用,compute字段默認不可查詢。當設置該參數時,可以通過該參數設置方法返回查詢條件,進行數據查詢。

related

引用字段參數。設置了該參數的字段相當于是配置字段的一個復制字段。

總結

以上是生活随笔為你收集整理的odoo13中的模型类(模型属性、字段属性、字段类型)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。