Skip to content

Commit b15d602

Browse files
authored
Add stubs for new async model methods from 4.2 (#1443)
1 parent 2969651 commit b15d602

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

django-stubs/db/models/base.pyi

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ class Model(metaclass=ModelBase):
4141
@classmethod
4242
def from_db(cls: type[Self], db: str | None, field_names: Collection[str], values: Collection[Any]) -> Self: ...
4343
def delete(self, using: Any = ..., keep_parents: bool = ...) -> tuple[int, dict[str, int]]: ...
44+
async def adelete(self, using: Any = ..., keep_parents: bool = ...) -> tuple[int, dict[str, int]]: ...
4445
def full_clean(
4546
self, exclude: Iterable[str] | None = ..., validate_unique: bool = ..., validate_constraints: bool = ...
4647
) -> None: ...
@@ -58,6 +59,13 @@ class Model(metaclass=ModelBase):
5859
using: str | None = ...,
5960
update_fields: Iterable[str] | None = ...,
6061
) -> None: ...
62+
async def asave(
63+
self,
64+
force_insert: bool = ...,
65+
force_update: bool = ...,
66+
using: str | None = ...,
67+
update_fields: Iterable[str] | None = ...,
68+
) -> None: ...
6169
def save_base(
6270
self,
6371
raw: bool = ...,
@@ -67,6 +75,7 @@ class Model(metaclass=ModelBase):
6775
update_fields: Iterable[str] | None = ...,
6876
) -> None: ...
6977
def refresh_from_db(self: Self, using: str | None = ..., fields: Sequence[str] | None = ...) -> None: ...
78+
async def arefresh_from_db(self: Self, using: str | None = ..., fields: Sequence[str] | None = ...) -> None: ...
7079
def serializable_value(self, field_name: str) -> Any: ...
7180
def prepare_database_save(self, field: Field) -> Any: ...
7281
def get_deferred_fields(self) -> set[str]: ...

django-stubs/db/models/manager.pyi

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,9 +149,13 @@ class Manager(BaseManager[_T]): ...
149149
class RelatedManager(Manager[_T]):
150150
related_val: tuple[int, ...]
151151
def add(self, *objs: _T | int, bulk: bool = ...) -> None: ...
152+
async def aadd(self, *objs: _T | int, bulk: bool = ...) -> None: ...
152153
def remove(self, *objs: _T | int, bulk: bool = ...) -> None: ...
154+
async def aremove(self, *objs: _T | int, bulk: bool = ...) -> None: ...
153155
def set(self, objs: QuerySet[_T] | Iterable[_T | int], *, bulk: bool = ..., clear: bool = ...) -> None: ...
156+
async def aset(self, objs: QuerySet[_T] | Iterable[_T | int], *, bulk: bool = ..., clear: bool = ...) -> None: ...
154157
def clear(self) -> None: ...
158+
async def aclear(self) -> None: ...
155159
def __call__(self, *, manager: str) -> RelatedManager[_T]: ...
156160

157161
class ManagerDescriptor:

0 commit comments

Comments
 (0)