跳至內容
選單
此問題已被標幟
2 回覆
7880 瀏覽次數

As we all know that we can use float field for time with the help of widget="float_time".

Now, my question is that how this float_time value is calculated/converted into float value.

Ex:

I am giving value 00:10 in my form and when I look into the db it shows 0.16666667.

Thanks in advance.

頭像
捨棄
最佳答案

The odoo will convert float to float_time like below


# Import math Library

import math

input_value = 0.16666667

hours, minutes = divmod(input_value * 60, 60)

result = '%02d:%02d' % (hours, minutes)

print(result)


Output: 00:10

頭像
捨棄
最佳答案

The number 0.16666667 was obtained from the division between 10 divided by 60 (rounded version of the real amount which is 0.16666666666 ​...). The formula happened because of the relation between minute and second where 1 minute = 60 seconds. Therefore, in this ​ widget="float_time" case, Odoo converted the 10 seconds into the amount determined in minute.​​​​​​​

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
0
3月 17
3976
1
5月 24
3476
3
10月 24
34219
1
4月 20
16007
2
5月 21
5261