Skip to content

Обёртка для генератора, для фильтрации в стиле django ORM

Notifications You must be signed in to change notification settings

etipsin/filter_orm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

filter_orm

Обёртка для генератора, для фильтрации в стиле django ORM

a = Magic(range(100))
a.filter(__gt=3).filter(__lte=5).or(__lt=20, __gt=17).not(__eq=15)

Работает лениво и распаковывается только при попытке проитерировать по объекту

Поддерживает методы:

filter - цепочка фильтров работает как and. Если в filter передано несколько аргументов, они работают как and.

or - условия альтернативно всему, что ранее было накоплено в объекте. Несколько условий внутри одного or объедияются как and.

not - условие отрицания всему, что ранее было накоплено в объекте. Несколько аргументов работают как and

Для запуска тестов

python -m unittest tests/tests.py

About

Обёртка для генератора, для фильтрации в стиле django ORM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages