Merge pull request #15 from HyreAS/more-fields

More fields
This commit is contained in:
Maxim Kurnikov
2019-02-05 16:46:57 +03:00
committed by GitHub
3 changed files with 34 additions and 6 deletions

View File

@@ -2,6 +2,8 @@ from typing import Any
from django.db import models
from psycopg2.extras import DateRange, DateTimeTZRange, NumericRange # type: ignore
class RangeField(models.Field):
empty_strings_allowed: bool = ...
base_field: Any = ...
@@ -10,8 +12,17 @@ class RangeField(models.Field):
def to_python(self, value: Any): ...
def value_to_string(self, obj: Any): ...
class IntegerRangeField(RangeField): ...
class BigIntegerRangeField(RangeField): ...
class FloatRangeField(RangeField): ...
class DateTimeRangeField(RangeField): ...
class DateRangeField(RangeField): ...
class IntegerRangeField(RangeField):
def __get__(self, instance, owner) -> NumericRange: ...
class BigIntegerRangeField(RangeField):
def __get__(self, instance, owner) -> NumericRange: ...
class FloatRangeField(RangeField):
def __get__(self, instance, owner) -> NumericRange: ...
class DateTimeRangeField(RangeField):
def __get__(self, instance, owner) -> DateTimeTZRange: ...
class DateRangeField(RangeField):
def __get__(self, instance, owner) -> DateRange: ...

View File

@@ -1,4 +1,5 @@
from typing import Any, Optional, Tuple, Iterable, Callable, Dict, Union, Type
import decimal
from django.db.models import Model
from django.db.models.query_utils import RegisterLookupMixin
@@ -67,7 +68,7 @@ class SmallIntegerField(IntegerField): ...
class BigIntegerField(IntegerField): ...
class FloatField(Field): ...
class DecimalField(IntegerField):
class DecimalField(Field):
def __init__(
self,
verbose_name: Optional[str] = ...,
@@ -90,6 +91,7 @@ class DecimalField(IntegerField):
validators: Iterable[_ValidatorCallable] = ...,
error_messages: Optional[_ErrorMessagesToOverride] = ...,
): ...
def __get__(self, instance, owner) -> decimal.Decimal: ...
class AutoField(Field):
def __get__(self, instance, owner) -> int: ...