-
Notifications
You must be signed in to change notification settings - Fork 69
/
Copy path__init__.py
36 lines (31 loc) · 1004 Bytes
/
__init__.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# low-level, tiny mixins. you will rarely want to use them in real world
from .session import SessionMixin
from .inspection import InspectionMixin
# high-level mixins
from .activerecord import ActiveRecordMixin, ModelNotFoundError
from .activerecordasync import ActiveRecordMixinAsync
from .smartquery import SmartQueryMixin, smart_query
from .eagerload import EagerLoadMixin, JOINED, SUBQUERY
from .repr import ReprMixin
from .serialize import SerializeMixin
from .timestamp import TimestampsMixin
# all features combined to one mixin
class AllFeaturesMixin(ActiveRecordMixin, SmartQueryMixin, ReprMixin, SerializeMixin):
__abstract__ = True
__repr__ = ReprMixin.__repr__
__all__ = [
"ActiveRecordMixin",
"ActiveRecordMixinAsync",
"AllFeaturesMixin",
"EagerLoadMixin",
"InspectionMixin",
"JOINED",
"ModelNotFoundError",
"ReprMixin",
"SerializeMixin",
"SessionMixin",
"smart_query",
"SmartQueryMixin",
"SUBQUERY",
"TimestampsMixin",
]