Q() в представлении Django не соблюдается

У меня эта модель:

class Opportunity(models.Model):
    [...]
    deadline = models.DateField(default=dateformat.format(timezone.now(), 'Y-m-d'))
    ongoing = models.BooleanField(default=False)
    [...]

Вид:

def opportunities_list_view(request):
    opportunities = Opportunity.objects.filter(Q(ongoing=True) | Q(deadline__gte=datetime.now()))

    context = {
        'opportunities': opportunities,
    }

    return render(request, 'opportunities/opportunities_list.html', context)

Это шаблон:

{% for opportunity in opportunities %}
<tr>
   <td>{{opportunity.title}}</a></td>
[...]

urls.py:

from myapp import opportunities_list_view,
[...]
path('opportunities/', opportunities_list_view, name='opportunities_list')
[...]

В шаблоне отображаются только объекты с deadline__gte=datetime.now(). Если объект имеет ongoing=True и deadline в прошлом, то он не отображается. Разве не об этом должен позаботиться | в моем Q()? Может быть, я что-то упускаю?

Вернуться на верх