Вы можете использовать Cast
. Например:
from django.db.models.functions import Cast
from django.db.models import DateField
YourModel.objects.annotate(start_date=Cast('starttime', DateField()))
Обновление
Вы можете попробовать это, используя database functions
:
from django.db.models.functions import ExtractDay, ExtractMonth, ExtractYear
YourModel.objects.annotate(
year=ExtractYear('starttime'),
month=ExtractMonth('starttime'),
day=ExtractDay('starttime')
).annotate(start_date=F('date')+'-'+F('month')+'-'+F('year')).values('start_date')
Непроверенный код
Исходя из этого ответа , вы можете попробовать вот так:
YourModel.objects.annotate(start_date=ExpressionWrapper(
Func(F('starttime'), Value('%d-%m-%Y'), function='DATE_FORMAT'), output_field=CharField()
))