mirror of
https://github.com/davidhalter/django-stubs.git
synced 2025-12-13 07:21:56 +08:00
Use BaseDatabaseWrapper class instead of sqlite3's wrapper (#610)
Code dealing with DatabaseWrapper instances should be capable of dealing with any database, not just sqlite3.
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
from typing import Any, List, Optional, Tuple, Union
|
from typing import Any, List, Optional, Tuple, Union
|
||||||
|
|
||||||
from django.db.backends.sqlite3.base import DatabaseWrapper
|
from django.db.backends.base.base import BaseDatabaseWrapper
|
||||||
from django.db.models.expressions import Combinable, Expression, Value
|
from django.db.models.expressions import Combinable, Expression, Value
|
||||||
from django.db.models.sql.compiler import SQLCompiler
|
from django.db.models.sql.compiler import SQLCompiler
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@ class Left(Func):
|
|||||||
def __init__(self, expression: str, length: Union[Value, int], **extra: Any) -> None: ...
|
def __init__(self, expression: str, length: Union[Value, int], **extra: Any) -> None: ...
|
||||||
def get_substr(self) -> Substr: ...
|
def get_substr(self) -> Substr: ...
|
||||||
def use_substr(
|
def use_substr(
|
||||||
self, compiler: SQLCompiler, connection: DatabaseWrapper, **extra_context: Any
|
self, compiler: SQLCompiler, connection: BaseDatabaseWrapper, **extra_context: Any
|
||||||
) -> Tuple[str, List[int]]: ...
|
) -> Tuple[str, List[int]]: ...
|
||||||
|
|
||||||
class Length(Transform): ...
|
class Length(Transform): ...
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from typing import Any, Iterable, List, Optional, Tuple, Type, Union, Mapping, TypeVar, Generic
|
from typing import Any, Iterable, List, Optional, Tuple, Type, Union, Mapping, TypeVar, Generic
|
||||||
|
|
||||||
from django.db.backends.sqlite3.base import DatabaseWrapper
|
from django.db.backends.base.base import BaseDatabaseWrapper
|
||||||
from django.db.models.expressions import Expression, Func
|
from django.db.models.expressions import Expression, Func
|
||||||
from django.db.models.query_utils import RegisterLookupMixin
|
from django.db.models.query_utils import RegisterLookupMixin
|
||||||
from django.db.models.sql.compiler import SQLCompiler
|
from django.db.models.sql.compiler import SQLCompiler
|
||||||
@@ -22,16 +22,16 @@ class Lookup(Generic[_T]):
|
|||||||
def __init__(self, lhs: Union[Expression, TextField, related_lookups.MultiColSource], rhs: Any) -> None: ...
|
def __init__(self, lhs: Union[Expression, TextField, related_lookups.MultiColSource], rhs: Any) -> None: ...
|
||||||
def apply_bilateral_transforms(self, value: Expression) -> Transform: ...
|
def apply_bilateral_transforms(self, value: Expression) -> Transform: ...
|
||||||
def batch_process_rhs(
|
def batch_process_rhs(
|
||||||
self, compiler: SQLCompiler, connection: DatabaseWrapper, rhs: Optional[OrderedSet] = ...
|
self, compiler: SQLCompiler, connection: BaseDatabaseWrapper, rhs: Optional[OrderedSet] = ...
|
||||||
) -> Tuple[List[str], List[str]]: ...
|
) -> Tuple[List[str], List[str]]: ...
|
||||||
def get_source_expressions(self) -> List[Expression]: ...
|
def get_source_expressions(self) -> List[Expression]: ...
|
||||||
def set_source_expressions(self, new_exprs: List[Expression]) -> None: ...
|
def set_source_expressions(self, new_exprs: List[Expression]) -> None: ...
|
||||||
def get_prep_lookup(self) -> Any: ...
|
def get_prep_lookup(self) -> Any: ...
|
||||||
def get_db_prep_lookup(self, value: Union[int, str], connection: DatabaseWrapper) -> Tuple[str, List[SafeText]]: ...
|
def get_db_prep_lookup(self, value: Union[int, str], connection: BaseDatabaseWrapper) -> Tuple[str, List[SafeText]]: ...
|
||||||
def process_lhs(
|
def process_lhs(
|
||||||
self, compiler: SQLCompiler, connection: DatabaseWrapper, lhs: Optional[Expression] = ...
|
self, compiler: SQLCompiler, connection: BaseDatabaseWrapper, lhs: Optional[Expression] = ...
|
||||||
) -> Tuple[str, List[Union[int, str]]]: ...
|
) -> Tuple[str, List[Union[int, str]]]: ...
|
||||||
def process_rhs(self, compiler: SQLCompiler, connection: DatabaseWrapper) -> Tuple[str, List[Union[int, str]]]: ...
|
def process_rhs(self, compiler: SQLCompiler, connection: BaseDatabaseWrapper) -> Tuple[str, List[Union[int, str]]]: ...
|
||||||
def rhs_is_direct_value(self) -> bool: ...
|
def rhs_is_direct_value(self) -> bool: ...
|
||||||
def relabeled_clone(self: _T, relabels: Mapping[str, str]) -> _T: ...
|
def relabeled_clone(self: _T, relabels: Mapping[str, str]) -> _T: ...
|
||||||
def get_group_by_cols(self) -> List[Expression]: ...
|
def get_group_by_cols(self) -> List[Expression]: ...
|
||||||
@@ -48,7 +48,7 @@ class Transform(RegisterLookupMixin, Func):
|
|||||||
def get_bilateral_transforms(self) -> List[Type[Transform]]: ...
|
def get_bilateral_transforms(self) -> List[Type[Transform]]: ...
|
||||||
|
|
||||||
class BuiltinLookup(Lookup[_T]):
|
class BuiltinLookup(Lookup[_T]):
|
||||||
def get_rhs_op(self, connection: DatabaseWrapper, rhs: str) -> str: ...
|
def get_rhs_op(self, connection: BaseDatabaseWrapper, rhs: str) -> str: ...
|
||||||
|
|
||||||
class FieldGetDbPrepValueMixin:
|
class FieldGetDbPrepValueMixin:
|
||||||
get_db_prep_lookup_value_is_iterable: bool = ...
|
get_db_prep_lookup_value_is_iterable: bool = ...
|
||||||
@@ -56,7 +56,7 @@ class FieldGetDbPrepValueMixin:
|
|||||||
class FieldGetDbPrepValueIterableMixin(FieldGetDbPrepValueMixin):
|
class FieldGetDbPrepValueIterableMixin(FieldGetDbPrepValueMixin):
|
||||||
def get_prep_lookup(self) -> Iterable[Any]: ...
|
def get_prep_lookup(self) -> Iterable[Any]: ...
|
||||||
def resolve_expression_parameter(
|
def resolve_expression_parameter(
|
||||||
self, compiler: SQLCompiler, connection: DatabaseWrapper, sql: str, param: Any
|
self, compiler: SQLCompiler, connection: BaseDatabaseWrapper, sql: str, param: Any
|
||||||
) -> Any: ...
|
) -> Any: ...
|
||||||
|
|
||||||
class PostgresOperatorLookup(FieldGetDbPrepValueMixin, Lookup):
|
class PostgresOperatorLookup(FieldGetDbPrepValueMixin, Lookup):
|
||||||
@@ -95,10 +95,10 @@ class Regex(BuiltinLookup[str]): ...
|
|||||||
class IRegex(Regex): ...
|
class IRegex(Regex): ...
|
||||||
|
|
||||||
class YearLookup(Lookup):
|
class YearLookup(Lookup):
|
||||||
def year_lookup_bounds(self, connection: DatabaseWrapper, year: int) -> List[str]: ...
|
def year_lookup_bounds(self, connection: BaseDatabaseWrapper, year: int) -> List[str]: ...
|
||||||
|
|
||||||
class YearComparisonLookup(YearLookup):
|
class YearComparisonLookup(YearLookup):
|
||||||
def get_rhs_op(self, connection: DatabaseWrapper, rhs: str) -> str: ...
|
def get_rhs_op(self, connection: BaseDatabaseWrapper, rhs: str) -> str: ...
|
||||||
def get_bound(self, start: datetime, finish: datetime) -> Any: ...
|
def get_bound(self, start: datetime, finish: datetime) -> Any: ...
|
||||||
|
|
||||||
class YearExact(YearLookup, Exact): ...
|
class YearExact(YearLookup, Exact): ...
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from django.apps.registry import Apps
|
|||||||
from django.contrib.contenttypes.fields import GenericForeignKey
|
from django.contrib.contenttypes.fields import GenericForeignKey
|
||||||
from django.contrib.postgres.fields.array import ArrayField
|
from django.contrib.postgres.fields.array import ArrayField
|
||||||
from django.contrib.postgres.fields.citext import CIText
|
from django.contrib.postgres.fields.citext import CIText
|
||||||
from django.db.backends.sqlite3.base import DatabaseWrapper
|
from django.db.backends.base.base import BaseDatabaseWrapper
|
||||||
from django.db.models.base import Model
|
from django.db.models.base import Model
|
||||||
from django.db.models.constraints import BaseConstraint
|
from django.db.models.constraints import BaseConstraint
|
||||||
from django.db.models.fields.mixins import FieldCacheMixin
|
from django.db.models.fields.mixins import FieldCacheMixin
|
||||||
@@ -97,7 +97,7 @@ class Options(Generic[_M]):
|
|||||||
def add_field(self, field: Union[GenericForeignKey, Field], private: bool = ...) -> None: ...
|
def add_field(self, field: Union[GenericForeignKey, Field], private: bool = ...) -> None: ...
|
||||||
def setup_pk(self, field: Field) -> None: ...
|
def setup_pk(self, field: Field) -> None: ...
|
||||||
def setup_proxy(self, target: Type[Model]) -> None: ...
|
def setup_proxy(self, target: Type[Model]) -> None: ...
|
||||||
def can_migrate(self, connection: Union[DatabaseWrapper, str]) -> bool: ...
|
def can_migrate(self, connection: Union[BaseDatabaseWrapper, str]) -> bool: ...
|
||||||
@property
|
@property
|
||||||
def verbose_name_raw(self) -> str: ...
|
def verbose_name_raw(self) -> str: ...
|
||||||
@property
|
@property
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from typing import Any, Callable, Dict, Iterator, List, Optional, Set, Tuple, Ty
|
|||||||
from django.core.exceptions import ImproperlyConfigured
|
from django.core.exceptions import ImproperlyConfigured
|
||||||
from django.core.handlers.wsgi import WSGIHandler
|
from django.core.handlers.wsgi import WSGIHandler
|
||||||
from django.core.servers.basehttp import ThreadedWSGIServer, WSGIRequestHandler
|
from django.core.servers.basehttp import ThreadedWSGIServer, WSGIRequestHandler
|
||||||
from django.db.backends.sqlite3.base import DatabaseWrapper
|
from django.db.backends.base.base import BaseDatabaseWrapper
|
||||||
from django.db.models.base import Model
|
from django.db.models.base import Model
|
||||||
from django.db.models.query import QuerySet, RawQuerySet
|
from django.db.models.query import QuerySet, RawQuerySet
|
||||||
from django.forms.fields import EmailField
|
from django.forms.fields import EmailField
|
||||||
@@ -205,7 +205,7 @@ class LiveServerThread(threading.Thread):
|
|||||||
self,
|
self,
|
||||||
host: str,
|
host: str,
|
||||||
static_handler: Type[WSGIHandler],
|
static_handler: Type[WSGIHandler],
|
||||||
connections_override: Dict[str, DatabaseWrapper] = ...,
|
connections_override: Dict[str, BaseDatabaseWrapper] = ...,
|
||||||
port: int = ...,
|
port: int = ...,
|
||||||
) -> None: ...
|
) -> None: ...
|
||||||
httpd: ThreadedWSGIServer = ...
|
httpd: ThreadedWSGIServer = ...
|
||||||
|
|||||||
Reference in New Issue
Block a user