Я пытаюсь преобразовать десятичное значение из моей модели Django в формат времени MM: SS: MS.
Например: 97,13 как десятичное значение будет 01:37:13.
Есть ли простой способ реализовать это с помощью необработанного SQL-запроса в Django? Допустим, у меня есть этот необработанный запрос:
example = Example.objects.raw("""SELECT x.id, x.time FROM your_Table x WHERE x.id = %s""", [id])
Было бы лучше выполнить необработанный запрос и манипулировать им в Python? Как мне это сделать? Могу ли я зациклить значения, например?
for examples in example:
formatted_time = function(examples.time)
В конце концов, я хотел бы передать мой пример объекта (с преобразованным временем) в свой шаблон.
Заранее спасибо.






Один из подходов - использовать «Фильтры шаблонов» Django и создать шаблонный фильтр для этого преобразования.
https://docs.djangoproject.com/en/2.0/howto/custom-template-tags/
Это выглядело бы примерно так:
@register.filter
def decimal_to_time_filter(decimal_value):
# implement this conversion
result = convert decimal_value to hh:mm:ss format
return result
В вашем шаблоне вы должны отображать переформатированные данные с помощью вашего настраиваемого фильтра «decimal_to_time_filter».
{{ your_decimal_field|decimal_to_time_filter }}
Спасибо, это именно то, что я искал. У A есть запущенная и работающая версия, хотя сама функция требует некоторой доработки.