Запросы фильтра Django в списке за последние x дней с Timedelta показывает только запросы за вычтенный день, а не полный диапазон - PullRequest
2 голосов
/ 22 октября 2019

Я пытаюсь составить список для отображения запросов за последние 100 дней. Если я использую Timedelta в фильтре, я могу перечислить запросы вычтенного Дня. Только точный день. Но я хочу перечислить все запросы между датой в поле даты и днем ​​в фильтре Timedelta. Что я делаю не так?

class Appointment(models.Model):

    Appointment_Company     = models.ForeignKey(Company,   on_delete=models.CASCADE)
    Appointment_Theme       = models.CharField(max_length=200)
    Appointment_Info        = models.TextField()
    Appointment_Date        = models.DateField(default=datetime.today)


    def __str__(self):
        return self.Appointment_Theme
class AppointmentView(DetailView):


    template_name = 'timecheck/Appointment_100.html'
    model = Company

    def get_context_data(self, *args, **kwargs):

        context = super().get_context_data(**kwargs)
        context['Company_list'] = Company.objects.all()
        context['Appointment_list'] = Appointment.objects.filter(Appointment_Date=datetime.today() - timedelta ( days =  100 ))

        print (context)
        return context

1 Ответ

0 голосов
/ 22 октября 2019

Вам необходимо отфильтровать с помощью __gte поиска [Django-doc] , чтобы Appointment_Date было больше или равно данномузначение, например:

context['Appointment_list'] = Appointment.objects.filter(
    <b>Appointment_Date__gte</b>=datetime.today()-timedelta(days=100)
)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...