Files
django-stubs/django-stubs-generated/db/models/fields/related_lookups.pyi
2018-11-10 17:49:18 +03:00

75 lines
2.7 KiB
Python

from collections import OrderedDict
from typing import Any, List, Optional, Tuple, Type, Union
from uuid import UUID
from django.db.backends.sqlite3.base import DatabaseWrapper
from django.db.models.base import Model
from django.db.models.expressions import Col
from django.db.models.fields import Field
from django.db.models.fields.related import ForeignObject
from django.db.models.lookups import (BuiltinLookup, Exact, GreaterThan,
GreaterThanOrEqual, In, IsNull, LessThan,
LessThanOrEqual)
from django.db.models.sql.compiler import SQLCompiler
from django.db.models.sql.query import Query
class MultiColSource:
alias: str
field: django.db.models.fields.related.ForeignObject
sources: Tuple[django.db.models.fields.Field, django.db.models.fields.Field]
targets: Tuple[django.db.models.fields.Field, django.db.models.fields.Field]
contains_aggregate: bool = ...
output_field: django.db.models.fields.related.ForeignObject = ...
def __init__(
self,
alias: str,
targets: Tuple[Field, Field],
sources: Tuple[Field, Field],
field: related.ForeignObject,
) -> None: ...
def relabeled_clone(self, relabels: OrderedDict) -> MultiColSource: ...
def get_lookup(self, lookup: str) -> Type[BuiltinLookup]: ...
def get_normalized_value(
value: Any, lhs: Union[Col, MultiColSource]
) -> Tuple[None]: ...
class RelatedIn(In):
bilateral_transforms: List[Any]
contains_aggregate: bool
lhs: Union[
django.db.models.expressions.Col,
django.db.models.fields.related_lookups.MultiColSource,
]
rhs: Union[
List[django.db.models.base.Model],
List[int],
List[uuid.UUID],
Set[django.contrib.contenttypes.models.ContentType],
Set[int],
Set[str],
Set[uuid.UUID],
django.db.models.sql.query.Query,
] = ...
def get_prep_lookup(
self
) -> Union[List[Model], List[int], List[str], List[UUID], Query]: ...
def as_sql(
self, compiler: SQLCompiler, connection: DatabaseWrapper
) -> Tuple[str, List[Any]]: ...
class RelatedLookupMixin:
rhs: Any = ...
def get_prep_lookup(self) -> Any: ...
def as_sql(
self, compiler: SQLCompiler, connection: DatabaseWrapper
) -> Tuple[str, List[Union[int, str]]]: ...
class RelatedExact(RelatedLookupMixin, Exact): ...
class RelatedLessThan(RelatedLookupMixin, LessThan): ...
class RelatedGreaterThan(RelatedLookupMixin, GreaterThan): ...
class RelatedGreaterThanOrEqual(RelatedLookupMixin, GreaterThanOrEqual): ...
class RelatedLessThanOrEqual(RelatedLookupMixin, LessThanOrEqual): ...
class RelatedIsNull(RelatedLookupMixin, IsNull): ...