Есть задача: поля datetime (c timezone) “пропускать” через шаблон еще на уровне views
Посмотрел в сторону annotate, долго проверял некоторые варианты - но так и не заработало.
def DateTimeString(vardatetime,request): tz = request.session["tz"] t = template.Template(""" {% load tz %} {% timezone tz %} <td>{{ vardatetime|date:"d.m.Y H:i e" }}</td> {% endtimezone %} """) c = template.Context({'vardatetime': vardatetime, 'tz':tz}) return t.render(c) data = { "model":d.device_scheme.name, "address":d.address.city.name, "status":d.status, "company":d.company.name, "ports":serializers.serialize('json', d.devices_ports_set.all().annotate(datetime_str=DateTimeString( F("datetime_update"),request)) ), "slots":serializers.serialize('json', d.device_link.all()), "combo":serializers.serialize('json', d.devices_combo_set.all()), "properties":serializers.serialize('json', d.devices_properties_set.all()), } response_data = {"result": data}
Не совсем понимаю как правильно решить эту задачу.
Возможно annotate вообще не подходит для этого?