Add SmallAutoField (#710)

* Add SmallAutoField

* Test SmallAutoField presents as int
This commit is contained in:
Craig
2021-09-09 22:58:03 +10:00
committed by GitHub
parent 372b1340a0
commit a1f3712c43
3 changed files with 11 additions and 0 deletions

View File

@@ -72,6 +72,7 @@ from .fields import PositiveBigIntegerField as PositiveBigIntegerField
from .fields import PositiveIntegerField as PositiveIntegerField
from .fields import PositiveSmallIntegerField as PositiveSmallIntegerField
from .fields import SlugField as SlugField
from .fields import SmallAutoField as SmallAutoField
from .fields import SmallIntegerField as SmallIntegerField
from .fields import TextField as TextField
from .fields import TimeField as TimeField

View File

@@ -500,3 +500,4 @@ class DurationField(Field[_ST, _GT]):
class BigAutoField(AutoField[_ST, _GT]): ...
class CommaSeparatedIntegerField(CharField[_ST, _GT]): ...
class SmallAutoField(AutoField[_ST, _GT]): ...

View File

@@ -174,3 +174,12 @@
obj = EncodedMessage(b'\x010')
reveal_type(obj.message) # N: Revealed type is "Union[builtins.bytes, builtins.memoryview]"
- case: test_small_auto_field_class_presents_as_int
main: |
from django.db import models
class MyModel(models.Model):
small = models.SmallAutoField(primary_key=True)
obj = MyModel()
reveal_type(obj.small) # N: Revealed type is "builtins.int*"