There are many ways to resolve your problem. According to 
https://stackoverflow.com/questions/769843/how-do-i-use-and-in-a-django-filter 
this 
should work:
from django.db.models import Q
date_range = Q(date_stop__range=[today, today_plus_ten])
date_none = Q(date_start=today, date_stop=None)
coursedates_ending = CourseDate.objects.filter(date_range & date_none)

You can also consider populating your date_stop with the same day as 
date_start if it's not specified. Personally, I get take that as the best 
answer. You can do that either with pre_save signal, which would do it even 
if that's added from Django Admin page or shell (docs 
<https://docs.djangoproject.com/en/2.1/ref/signals/#django.db.models.signals.pre_save>)
 
or form validation only for form(s) (docs 
<https://docs.djangoproject.com/pl/2.1/ref/forms/validation/>).

BTW: Notice, there is no need for X.objects.all().filter(...), you can just 
use X.objects.filter(...).

Notice: This answer was removed and edited.

W dniu wtorek, 9 października 2018 18:23:38 UTC+2 użytkownik Moreplavec 
napisał:
>
> Hello,
>
> I have DB with courses and each course has many dates (with starting and 
> ending date). I'm trying to make report with starting and ending course 
> dates in 10 days. The problem is, that one day courses usually don't have 
> ending date (date_stop) filled. Right now i'm using query:
>
> coursedates_ending = 
> CourseDate.objects.all().filter(date_stop__range=[today, 
> today_plus_ten]).order_by('date_stop')
>
> to get courses ending in 10 days. But is it possible to include courses 
> without ending date and for this courses to look at the date_start? Or is 
> it possible to update coursedates_ending with such courses?
>
> Thanks for help or tips how to do it django-way.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/85c50c19-2eea-4be0-b38d-d4f498813c7e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to