mirror of
https://github.com/davidhalter/django-stubs.git
synced 2025-12-15 16:27:09 +08:00
additional defer() to offset the effect of using the type before decl… (#424)
* additional defer() to offset the effect of using the type before declaring * linter fix * linter fix * linter fix * test case Co-authored-by: Kacper Szmigiel <szmigielkacper@gmai.com>
This commit is contained in:
@@ -335,3 +335,25 @@
|
||||
objects = MyManager()
|
||||
class ChildUser(models.Model):
|
||||
objects = MyManager()
|
||||
|
||||
- case: custom_manager_annotate_method_before_type_declaration
|
||||
main: |
|
||||
from myapp.models import ModelA, ModelB, ManagerA
|
||||
reveal_type(ModelA.objects) # N: Revealed type is 'myapp.models.ModelA_ManagerA1[myapp.models.ModelA]'
|
||||
reveal_type(ModelA.objects.do_something) # N: Revealed type is 'def (other_obj: myapp.models.ModelB) -> builtins.str'
|
||||
installed_apps:
|
||||
- myapp
|
||||
files:
|
||||
- path: myapp/__init__.py
|
||||
- path: myapp/models.py
|
||||
content: |
|
||||
from django.db import models
|
||||
class ManagerA(models.Manager):
|
||||
def do_something(self, other_obj: "ModelB") -> str:
|
||||
return 'test'
|
||||
class ModelA(models.Model):
|
||||
title = models.TextField()
|
||||
objects = ManagerA()
|
||||
class ModelB(models.Model):
|
||||
movie = models.TextField()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user