1. 程式人生 > >odoo中的一些方法

odoo中的一些方法

read方法
返回記錄的指定欄位值列表
格式:def read(self,cr,uid,ids,fields=None,context={})
引數:
ids:待讀取的記錄的id列表,比如[1,3,5]
fields(optional):待讀取的欄位值,不指定則讀取所有欄位
context(optional):context是一個字典,存放一些上下文值
返回值:
返回讀取結果的字典列表

browse方法
瀏覽物件及其關聯物件。從資料庫中讀取指定的記錄,並生成物件返回。和read等方法不同,本方法不止返回簡單的記錄返回物件。返回的物件可以直接使用‘.’存取物件的欄位和方法,也可以通過關聯欄位直接訪問“相鄰”物件。即返回一個物件本身。
格式:
def browse(self, cr, uid, select, offset=0, limit=2000) 
例:
addr_obj = self.pool.get('res.partner.address').browse(cr,uid,contact_id)
nom = addr_obj.name
compte = addr_obj.partner_id.bank
先從物件池中取得物件res.partner.address,呼叫它的方法browse,取得id=contact_id的物件,然後直接用“name”欄位以及關聯物件partner的銀行(addr_obj.partner_id.bank)
引數:
select:待返回的物件id,可以是一個id或是一個id列表
offset(optional)偏移記錄數,表示不返回檢索結果的offset條
limit(optional):返回結果的最大記錄數
返回值:返回物件或物件列表
注意:
本方法只能在Server上使用,不支援rpc等遠端呼叫

unlink方法
刪除一個或幾個記錄
格式:def unlink(self,cr,uid,ids)
引數:
ids:待刪除的記錄的id列表
返回值:如果沒有異常,返回True,否則丟擲異常


default_get方法
復位一個或多個欄位的預設值
格式:def default_get(self,cr,uid,fields,form=None,reference=None)
引數:
fields:希望復位預設值的欄位列表
返回值:
欄位預設值,是一個字典


default_set
充值欄位的預設值
格式:def default_set(self,cr,uid,field,value,for_user=False)
引數:
field:待修改預設值的欄位
value:新的預設值
for_user(optional):修改是否只對當前使用者有效,還是對所有使用者有效,預設值是對所有使用者有效
返回值:True

field標記的屬性如下:


name: 必需的, 欄位名
eval: 可選的, 一個python表示式, 通過它計算值
ref: 對本檔案中出現過的id的引用
model: 搜尋時使用的模型
search: 一個查詢