2

How to test the type of a RelatedManager in Django ?

assert type(qs) in [models.QuerySet, models.Manager]

fails if qs is a RelatedManager

how do I test if qs is a RelatedManager ?

Skratt
  • 289
  • 4
  • 13

2 Answers2

0

You can check the type of a related manager object by entering type(some_related_manager_object) in the shell. This returns <class 'django.db.models.manager.Manager'>.

To check if a queryset has type related manager object:

from django.db.models.manager import Manager

assert type(qs)==Manager
yagus
  • 1,417
  • 6
  • 14
0

ok, found a solution:

assert isinstance(qs, (models.QuerySet, models.Manager))
Skratt
  • 289
  • 4
  • 13