odoo-8
Wat zijn de ORM-methoden en details?
Zoeken…
Opmerkingen
Aanmaakmethode: maak een nieuw record met de opgegeven waarde. Neemt een aantal veldwaarden en retourneert een recordset met de gemaakte record
def create(self,vals):
return super(class_name, self).create(vals)
Schrijfmethode: werk records met gegeven ID's bij met de gegeven veldwaarden. Neemt een aantal veldwaarden en schrijft ze naar alle records in de recordset. Retourneert niets
def write(self,vals):
return super(class_name, self).write(vals)
Zoekmethode: zoeken naar records op basis van een zoekdomein. Neemt een zoekdomein en retourneert een recordset van overeenkomende records. Kan een subset van overeenkomende records retourneren (offset- en limietparameters) en worden besteld (orderparameter)
self.search([('customer','=',True)])
self.env['res.partner'].search(['partner','=',True])
Bladermethode: records ophalen als objecten waarmee puntnotatie kan worden gebruikt om door velden en relaties te bladeren. Neemt een database-ID of een lijst met id's en retourneert een recordset, handig wanneer record-id's worden verkregen van buiten Odoo (bijv. Retour via extern systeem) of bij het aanroepen van methoden in de oude API.
self.browse([7,8,9])
self.env['res.partner'].browse([7,8,9])
Bestaat methoden: Retourneert een nieuwe recordset die alleen de records bevat die in de database bestaan. Kan worden gebruikt om te controleren of een record (bijv. Extern verkregen) nog bestaat.
records = records.exists()
ref-methode: omgevingsmethode die het record retourneert dat overeenkomt met een opgegeven externe id
self.env.ref('base.group_public')
sure_one-methode: controleert of de recordset een singleton is (bevat slechts één record), geeft anders een fout
records.ensure_one()
Verschillende soorten ORM-methoden
- create ()
- schrijven()
- zoeken()
- browse ()
- bestaat ()
- ref ()
- ensure_one ()