Skip to content

✨ Implement Elasticsearch converter to criteria-pattern #107

@adriamontoto

Description

@adriamontoto

Description

from criteria_pattern import Criteria, Filter, Operator
from criteria_pattern.converter import CriteriaToElasticsearchConverter

is_adult = Criteria(filters=[Filter(field='age', operator=Operator.GREATER_OR_EQUAL, value=18)])
email_is_gmail = Criteria(filters=[Filter(field='email', operator=Operator.ENDS_WITH, value='@gmail.com')])
email_is_yahoo = Criteria(filters=[Filter(field='email', operator=Operator.ENDS_WITH, value='@yahoo.com')])

query = CriteriaToElasticsearchConverter.convert(criteria=is_adult & (email_is_gmail | email_is_yahoo), index='user')

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions