Подтвердить что ты не робот

Каковы доступные операторы домена в Openerp/Odoo?

Я знаю немного операторов в домене openerp. Я не получаю информацию о доступных доменах и их объяснениях. Особенно для этих областей отрицания. Может ли кто-нибудь рассказать мне подробный список?

4b9b3361

Ответ 1

Это дает обзор:

Список операторов Домен: ! (не), | (или), & (и)

Список операторов Term: '=', '!=', '<=', '<', '>', '>=', '=?', '=like', '=ilike', 'like', 'not like', 'ilike', 'not ilike', 'in', 'not in', 'child_of'

Использование

Входные записи:

Запись 1: Openerp

Запись 2: Openerp

Запись 3: Opensource

Запись 4: Opensource

Запись 5: Open

Запись 6: Open

Запись 7: Odoo

Запись 8: Odoo

Запись 9: Odooopenerp

Запись 10: Odooopenerp

'like': [('input', 'like', 'open')] - возвращает регистр с учетом регистра (wildcards - '% open%').

O/p: open, opensource, openerp, Odooopenerp

'не нравится': [('input', 'not like', 'open')] - Возвращает результаты, не совпадающие с регистрозависимым (wildcards - '% open%').

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

'= like': [('name', '=like', 'open')] - возвращает точный (= 'открытый') поиск с учетом регистра.

O/p: open

'ilike': [('name', 'ilike', 'open')] - возвращает точный регистр без учета регистра (wildcards - '% open%').

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

'not ilike': [('name', 'not ilike', 'open')] - Возвращает результаты, не совпадающие с точным нечувствительным к регистру (wildcards - '% open%').

O/p: Odoo, odoo

'= ilike': [('name', '=ilike', 'open')] - возвращает точный (= 'открытый' или 'открытый') регистр без учета регистра.

O/p: Открыть, открыть

'=?':

name = 'odoo' parent_id = False [('name', 'like', name), ('parent_id', '=?', parent_id)] - возвращает результат домена имени и True

name = 'odoo' parent_id = 'openerp' [('name', 'like', name), ('parent_id', '=?', parent_id)] - Возвращает результат домена имени и результат домена parent_id

'=?' - это короткое замыкание, которое делает термин TRUE, если right имеет значение None или False, '=?' ведет себя как '=' в других случаях

'в': [('value1', 'in', ['value1', 'value2'])] - в операторе будет проверяться, что значение1 присутствует или нет в списке правильного термина

'не в': [('value1', 'not in', ['value2'])] - не в операторе будет проверять значение1, нет в списке правильного термина Хотя эти "in" и "not in" работают со списком/кортежем значений, последний '=' и '!=' работает со строкой

'=': value = 10 [('value','=',value)] - термин левая сторона имеет 10 в db, а термин right наше значение 10 будет соответствовать

'=!': value = 15 [('value','!=',value)] - термин левая сторона имеет 10 в db, а термин right наше значение 10 не будет соответствовать

'child_of': parent_id = '1' #Agrolait 'ребенок': [('partner_id', 'child_of', parent_id)] - вернуть левый и правый список partner_id для данного родителя_ид

'< =', '<', ' > ', ' > =': Эти операторы в основном используются в openerp для сравнения дат - [('date', '>=', date_begin), ('date', '<=', date_end)]. Вы можете использовать эти операторы для сравнения int или float.

Ответ 2

условие A и условие B для домена в синтаксисе фильтра похоже на

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