Объединение полей даты и времени Django в ExpressionWrapper дает ошибку типа: ожидаемая строка или объект, подобный байтам

#python #django #django-models #django-annotate

Вопрос:

У меня есть модель запроса, в которой есть внешний ключ для слота

Мои игровые модели выглядят так:-

 class Slot(models.Model):  day = models.DateField()  start_time = models.TimeField()  end_time = models.TimeField()  

На мой взгляд, я пытаюсь аннотировать поля day и start_time, чтобы сравнить их с текущим временем,

 from django.db.models import DateTimeField, DateField, TimeField, ExpressionWrapper, F   pending_requests = Request.objects.annotate(  my_dt=ExpressionWrapper(  F('slot__day')   F('slot__start_time'),  output_field=DateTimeField()  )  )[0]  

Это дает мне: ошибка типа: ожидаемая строка или объект, подобный байтам

Когда я аннотирую каждое поле к соответствующему типу поля, оно работает нормально,

 pending_requests = Request.objects.annotate(  my_dt=ExpressionWrapper(  F('slot__day'),  output_field=DateField()  )  )[0]  

Не уверен, правильно ли я комбинирую поля или как я могу это исправить, пожалуйста