Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将十进制转换为MM:SS:MS Django_Python_Sql_Django_Data Conversion - Fatal编程技术网

Python 将十进制转换为MM:SS:MS Django

Python 将十进制转换为MM:SS:MS Django,python,sql,django,data-conversion,Python,Sql,Django,Data Conversion,我正在尝试将Django模型中的十进制值转换为MM:SS:MS的时间格式 例如:97.13作为十进制值将变为01:37:13 在Django中有没有简单的方法可以通过原始SQL查询实现这一点?假设我有一个原始查询: example = Example.objects.raw("""SELECT x.id, x.time FROM your_Table x WHERE x.id = %s""", [id]) 执行原始查询并在Python中对其进行操作是否更好?我该怎么做呢?我可以循环这些值吗,例

我正在尝试将Django模型中的十进制值转换为MM:SS:MS的时间格式

例如:97.13作为十进制值将变为01:37:13

在Django中有没有简单的方法可以通过原始SQL查询实现这一点?假设我有一个原始查询:

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的模板过滤器,并为转换制作模板过滤器

它看起来像:

@register.filter
def decimal_to_time_filter(decimal_value):

   # implement this conversion
   result = convert decimal_value to hh:mm:ss format

   return result
在模板中,您可以使用自定义的“十进制时间过滤器”过滤器显示重新格式化的数据


{{your_decimal_field|decimal_to_time_filter}}

谢谢,这正是我要找的。虽然函数本身需要做一些工作,但是A已经有了一个版本并正在运行。