コンテンツへスキップ
メニュー
この質問にフラグが付けられました
2 返信
7887 ビュー

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
3978
1
5月 24
3484
3
10月 24
34224
1
4月 20
16017
2
5月 21
5262