Опрос между django и двумя датами - PullRequest
0 голосов
/ 18 апреля 2020

Я написал приложение с django. Но я хочу задать вопрос между двумя датами. Я написал код, как показано ниже, но результаты пусты

Я хочу перечислить записи между двумя датами, которые я дал. поля должны быть в форме dateTimeField

image 1 image 2

API: http://127.0.0.1: 8000 / api / назначений / list? user = 2 & groupCode = 1453 & startDate = 2020-04-17 + 10: 00: 00 & endDate = 2020-12-12 + 08: 00: 00

Модель:

`

 user = models.ForeignKey(User, on_delete=models.CASCADE, default=0, blank=False)
 startDate = models.DateTimeField(blank=True)
 endDate = models.DateTimeField(blank=True)
 groupCode = models.CharField(max_length=50, blank=False)

`

 class AppointmentsListAPIView(ListAPIView):
     serializer_class = AppointmentsCreateSerializer
     filter_backends = [django_filters.rest_framework.DjangoFilterBackend]
     filter_fields = ['customer', 'user', 'groupCode', 'startDate', 'endDate']

     def get_queryset(self):
         print(self.request.query_params.get('startDate'))

         queryset = Appointments.objects.filter(user=self.request.user,
                                           groupCode=self.request.query_params.get('groupCode'),
                                           startDate__gt=self.request.query_params.get('startDate'),
                                           endDate__lt=self.request.query_params.get('endDate'))
    return queryset

`

Ошибка

RuntimeWarning: DateTimeField Appointments.endDate получил наивную дату / время (2020-12-12 08: 00:00) при активной поддержке часового пояса. RuntimeWarning)

RuntimeWarning: DateTimeField Appointments.startDate получил наивное время даты (2020-04-17 10:00:00), пока активна поддержка часового пояса. RuntimeWarning)

1 Ответ

0 голосов
/ 18 апреля 2020

Пользователь должен прийти с self.request.user, а не с query_params

...