web-dev-qa-db-fra.com

Quels sont les opérateurs de domaine disponibles dans Openerp / Odoo?

Je connais peu d'opérateurs dans le domaine openerp. Je ne reçois pas les détails des domaines disponibles et leur explication. En particulier pour ces domaines de négation. Quelqu'un peut-il me dire la liste détaillée?

29
cracker

Cela donne un aperçu:

Liste des opérateurs domaine: ! (Non), | (Ou), & (Et)

Liste des opérateurs Term: '=', '!=', '<=', '<', '>', '>=', '=?', '=like', '=ilike', 'like', 'not like', 'ilike', 'not ilike', 'in', 'not in', 'child_of'

tilisation:

Enregistrements d'entrée:

Enregistrement 1: Openerp

Enregistrement 2: openerp

Enregistrement 3: Opensource

Enregistrement 4: opensource

Enregistrement 5: Open

Enregistrement 6: open

Enregistrement 7: Odoo

Enregistrement 8: odoo

Enregistrement 9: Odooopenerp

Enregistrement 10: OdooOpenerp

'like':[('input', 'like', 'open')] - Renvoie la recherche sensible à la casse (caractères génériques - '% open%').

O/p: open, opensource, openerp, Odooopenerp

'not like':[('input', 'not like', 'open')] - Renvoie des résultats qui ne correspondent pas à la recherche sensible à la casse (caractères génériques - '% open%').

O/p: Openerp, Opensource, Open, Odoo, odoo, OdooOpenerp

'= like':[('name', '=like', 'open')] - Renvoie la recherche exacte (= 'open') sensible à la casse.

O/p: ouvert

'ilike':[('name', 'ilike', 'open')] - Renvoie la recherche exacte insensible à la casse (caractères génériques - '% open%').

O/p: Openerp, openerp, Opensource, opensource, Open, open, Odooopenerp, OdooOpenerp

'not ilike':[('name', 'not ilike', 'open')] - Renvoie des résultats qui ne correspondent pas à la recherche exacte insensible à la casse (caractères génériques - '% open%').

O/p: Odoo, odoo

'= ilike':[('name', '=ilike', 'open')] - Retourne une recherche exacte (= 'open' ou 'Open') insensible à la casse.

O/p: ouvert, ouvert

'=?':

name = 'odoo' parent_id = False [('name', 'like', name), ('parent_id', '=?', parent_id)] - Retourne le résultat du domaine de nom et True

name = 'odoo' parent_id = 'openerp' [('name', 'like', name), ('parent_id', '=?', parent_id)] - Retourne le résultat du domaine de nom et le résultat du domaine parent_id

'=?' est un court-circuit qui rend le terme TRUE si le droit est None ou False, '=?' se comporte comme '=' dans les autres cas

'in':[('value1', 'in', ['value1', 'value2'])] - in opérateur vérifiera que la valeur1 est présente ou non dans la liste des bons termes

'pas dans':[('value1', 'not in', ['value2'])] - pas dans l'opérateur vérifiera que la valeur1 n'est pas présente dans la liste du bon terme Alors que ces 'dans' et 'pas dans' fonctionnent avec la liste/Tuple de valeurs, cette dernière '=' et '!=' fonctionne avec une chaîne

'=': value = 10 [('value','=',value)] - term left side has 10 in db and term right our value 10 match

'! =': valeur = 15 [('value','!=',value)] - terme gauche a 10 en db et terme droit notre valeur 10 ne correspondra pas

'child_of': parent_id = '1' #Agrolait 'child_of': [('partner_id', 'child_of', parent_id)] - retourne la liste gauche et droite de partner_id pour parent_id donné

'<=', '<', '>', '> =': Ces opérateurs sont largement utilisés dans openerp pour comparer les dates - [('date', '>=', date_begin), ('date', '<=', date_end)]. Vous pouvez également utiliser ces opérateurs pour comparer int ou float.

77
no coder