2015-04-04 23 views

risposta

53

Questo dà una visione d'insieme:

Elenco dei Dominio operatori: ! (Not), | (Or), & (E)

Elenco dei Termine operatori: '=', '!=', '<=', '<', '>', '>=', '=?', '=like', '=ilike', 'like', 'not like', 'ilike', 'not ilike', 'in', 'not in', 'child_of'

Utilizzo:

record di input:

Notizia 1: Openerp

Record 2: openerp

Record 3: Opensource

Record 4: opensource

Record 5: Open

Record 6: open

Record 7: Odoo

Record 8: odoo

Record 9: Odooopenerp

Record 10: OdooOpenerp

'come':[('input', 'like', 'open')] - Consegna case sensitive (jolly - '% open%') cerca.

O/p: aperta, opensource, OpenERP, Odooopenerp

'non piace':[('input', 'not like', 'open')] - Restituisce risultati non abbinati a caso sensibili (jolly - '% open%') di ricerca.

O/p: OpenERP, Opensource, Open, vudù, vudù, OdooOpenerp

'= like':[('name', '=like', 'open')] - Returns esatto (= 'aperto') Caso di ricerca sensibili.

O/p: aperto

'iLike':[('name', 'ilike', 'open')] - Consegna caso esatto insensitive (caratteri jolly - '%% open') di ricerca.

O/p: OpenERP, OpenERP, Opensource, opensource, Open, aperto, Odooopenerp, OdooOpenerp

'non iLike':[('name', 'not ilike', 'open')] - Restituisce risultati non abbinati a caso esatto insensitive (caratteri jolly - '% open %') ricerca.

O/p: vudù, vudù

'= iLike':[('name', '=ilike', 'open')] - Restituisce esatto (= 'aperta' o 'Apri') Caso ricerca maiuscole.

O/p: Open, aperto

'=?':

name = 'vudù' parent_id = False [('name', 'like', name), ('parent_id', '=?', parent_id)] - Consegna risultato nome di dominio & Vero

name = 'vudù' parent_id = 'OpenERP' [('name', 'like', name), ('parent_id', '=?', parent_id)] - restituisce il risultato nome di dominio & parent_id risultato dominio

'=?' è un corto circuito che rende il termine TRUE se a destra è None o Falso, '=?' comporta come '=' in altri casi

'in': [('value1', 'in', ['value1', 'value2'])] - in operatore verificherà la value1 è presente o non in lista del diritto termine

'non': [('value1', 'not in', ['value2'])] - non in operatore controllerà il valore1 non è presente nella lista di destra termine Mentre questi 'in' e 'non in' funziona con la lista/tupla di valori , quest'ultimo '=' e '!=' opere con stringa

'=': value = 10 [('value','=',value)] - termine di sinistra è 10 dB e termine giusto il nostro valore 10 corrisponderà

: '=!' value = 15 [('value','!=',value)] - termine lato sinistro ha 10 db e termine giusto il nostro valore 10 non corrisponderà

'child_of': parent_id = '1' #Agrolait 'child_of': [('partner_id', 'child_of', parent_id)] - tornare lista a destra ea sinistra di partner_id per data parent_id

'< =', '<', '>', '> =': Questi operatori sono largamente utilizzati in OpenERP per le date di confronto - [('date', '>=', date_begin), ('date', '<=', date_end)]. È possibile utilizzare questi operatori per confrontare int o float anche.

+0

L'arity per il ** non ** operatore è uno, per la ** ** o operatore è due, e per la ** e ** l'operatore è due. Quindi se hai bisogno di ** o ** tre termini usa due operatori ** o **, se hai bisogno di ** o ** quattro termini usa tre operatori ** o **, eccetera. –

+0

utile. Grazie. –

-4

condizione A e B per condizione nel dominio nella sintassi filtro è come

<filter name="filtering" string="Filtering" domain="[(A),(B)]" /> 
Problemi correlati