From bb3973ffb714c932e9ec6dd6a751228dc71fe1d3 Mon Sep 17 00:00:00 2001 From: lxf Date: Sat, 14 May 2022 16:38:07 -0400 Subject: initial commit --- app/lib/django_comments/managers.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 app/lib/django_comments/managers.py (limited to 'app/lib/django_comments/managers.py') diff --git a/app/lib/django_comments/managers.py b/app/lib/django_comments/managers.py new file mode 100644 index 0000000..9e1fc77 --- /dev/null +++ b/app/lib/django_comments/managers.py @@ -0,0 +1,22 @@ +from django.db import models +from django.contrib.contenttypes.models import ContentType +from django.utils.encoding import force_text + + +class CommentManager(models.Manager): + def in_moderation(self): + """ + QuerySet for all comments currently in the moderation queue. + """ + return self.get_queryset().filter(is_public=False, is_removed=False) + + def for_model(self, model): + """ + QuerySet for all comments for a particular model (either an instance or + a class). + """ + ct = ContentType.objects.get_for_model(model) + qs = self.get_queryset().filter(content_type=ct) + if isinstance(model, models.Model): + qs = qs.filter(object_pk=force_text(model._get_pk_val())) + return qs -- cgit v1.2.3-70-g09d2