From b4320ab4a6d4d72e22dcb7279a1d34adcd58baf9 Mon Sep 17 00:00:00 2001 From: evgeniy-st Date: Mon, 23 Sep 2019 17:17:42 +0300 Subject: [PATCH] End of news may be None --- .../news/migrations/0012_auto_20190923_1416.py | 18 ++++++++++++++++++ apps/news/models.py | 7 +++++-- 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 apps/news/migrations/0012_auto_20190923_1416.py diff --git a/apps/news/migrations/0012_auto_20190923_1416.py b/apps/news/migrations/0012_auto_20190923_1416.py new file mode 100644 index 00000000..2a59e2b0 --- /dev/null +++ b/apps/news/migrations/0012_auto_20190923_1416.py @@ -0,0 +1,18 @@ +# Generated by Django 2.2.4 on 2019-09-23 14:16 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('news', '0011_auto_20190923_1134'), + ] + + operations = [ + migrations.AlterField( + model_name='news', + name='end', + field=models.DateTimeField(blank=True, default=None, null=True, verbose_name='End'), + ), + ] diff --git a/apps/news/models.py b/apps/news/models.py index c132f6fc..bf61f51a 100644 --- a/apps/news/models.py +++ b/apps/news/models.py @@ -37,7 +37,9 @@ class NewsQuerySet(models.QuerySet): def published(self): """Return only published news""" now = timezone.now() - return self.filter(is_publish=True, start__lte=now, end__gte=now) + return self.filter(models.Q(models.Q(end__gte=now) | + models.Q(end__isnull=True)), + is_publish=True, start__lte=now) def with_related(self): """Return qs with related objects.""" @@ -59,7 +61,8 @@ class News(BaseAttributes, TranslatedFieldsMixin): verbose_name=_('description'), help_text='{"en-GB":"some text"}') start = models.DateTimeField(verbose_name=_('Start')) - end = models.DateTimeField(verbose_name=_('End')) + end = models.DateTimeField(blank=True, null=True, default=None, + verbose_name=_('End')) playlist = models.IntegerField(_('playlist')) is_publish = models.BooleanField(default=False, verbose_name=_('Publish status'))