Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
1 Trả lời
13219 Lượt xem

in my custom model I defined the fields

time_from = fields.Datetime(string="Time From", default=datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))

time_to = fields.Datetime(string="Time To", default=datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))

tot_time = fields.Char("Time Difference", compute='_get_time')

this is my compute function

@api.depends('time_from', 'time_to')
def _get_time(self):
    t1 = datetime.datetime.strptime(self.time_from, '%Y-%m-%d %H:%M:%S')
    t2 = datetime.datetime.strptime(self.time_to, '%Y-%m-%d %H:%M:%S')
    if t2<t1:
        raise ValidationError('Time To must greater than Time From')
    time_diff = (t2-t1)
    self.tot_time = time_diff

This is success fully prints time difference. Time from and time to are mm/dd/yyyy hh:mm:ss format.

How to change this to mm/dd/yyyy hh:mm:ss format

I changed the format like this '%Y-%d-%m %H:%M:%S' .
but it is not getting correct result.
How to change the format?
is it possible to calculate time difference in this format?

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

The common syntax to change the date time format :

datetime.datetime.strptime(date_string, format1).strftime(format2)
Ảnh đại diện
Huỷ bỏ
Bài viết liên quan Trả lời Lượt xem Hoạt động
5
thg 10 24
12661
2
thg 3 24
2500
1
thg 1 21
8739
2
thg 8 19
23859
4
thg 1 20
6244