File tree Expand file tree Collapse file tree 1 file changed +31
-0
lines changed
Expand file tree Collapse file tree 1 file changed +31
-0
lines changed Original file line number Diff line number Diff line change 663663 Transaction().test()
664664
665665
666+ - case : foreign_key_relationship_for_models_with_custom_manager_unsolvable
667+ main : |
668+ from myapp.models import Transaction
669+ installed_apps :
670+ - myapp
671+ files :
672+ - path : myapp/__init__.py
673+ - path : myapp/models.py
674+ content : |
675+ from django.db import models
676+ from django.db.models.manager import BaseManager
677+ class TransactionQuerySet(models.QuerySet):
678+ def custom(self) -> None:
679+ pass
680+
681+ # Note, that we cannot resolve dynamic calls for custom managers:
682+ class Transaction(models.Model):
683+ objects = BaseManager.from_queryset(TransactionQuerySet)
684+ def test(self) -> None:
685+ reveal_type(self.transactionlog_set)
686+ # We use a fallback Any type:
687+ reveal_type(Transaction.objects.custom())
688+
689+ class TransactionLog(models.Model):
690+ transaction = models.ForeignKey(Transaction, on_delete=models.CASCADE)
691+ out : |
692+ myapp/models:9: error: `.from_queryset` called from inside model class body
693+ myapp/models:11: note: Revealed type is "django.db.models.manager.RelatedManager[myapp.models.TransactionLog]"
694+ myapp/models:13: note: Revealed type is "Any"
695+
696+
666697 - case : resolve_primary_keys_for_foreign_keys_with_abstract_self_model
667698 main : |
668699 from myapp.models import User
You can’t perform that action at this time.
0 commit comments