utils.py 503 B

123456789101112131415
  1. from taggit.managers import _TaggableManager
  2. from utilities.querysets import DummyQuerySet
  3. def is_taggable(obj):
  4. """
  5. Return True if the instance can have Tags assigned to it; False otherwise.
  6. """
  7. if hasattr(obj, 'tags'):
  8. if issubclass(obj.tags.__class__, _TaggableManager):
  9. return True
  10. # TaggableManager has been replaced with a DummyQuerySet prior to object deletion
  11. if isinstance(obj.tags, DummyQuerySet):
  12. return True
  13. return False