Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
2 Odpovědi
4587 Zobrazení
from_date = fields.Datetime(string='Start', required=True)

This field gives me: 05/08/2022 11:05:39 this type output.

But I only need Time as an output:  11:05:39

How can I do this kindly help

Avatar
Zrušit
Nejlepší odpověď

from datetime import datetime

datetime.strftime(from_date , "%H:%M:%S")


Avatar
Zrušit
Autor Nejlepší odpověď

@ Waleed Mohsen not working brother


Avatar
Zrušit

The above code is working with me in Odoo 15.0. Make sure to use self before the field name.

What Odoo version you are using?
What the result you are getting?

Could you please post your code?

Autor

@Waleed Mohsen brother check:
from odoo import fields, api, models
from odoo.exceptions import ValidationError
from datetime import datetime

class Regular(models.Model):
_name = 'attendance.regular'
_rec_name = 'employee_id'
_description = 'Approval Request'
_inherit = ['mail.thread', 'mail.activity.mixin']
from_date = fields.Datetime(string='Start', required=True, compute="_compute_time")
to_date = fields.Datetime(string='End')
def _compute_time(self):
for rec in self:
if rec.from_date:
rec.datetime.strftime(self.from_date, "%H:%M:%S")

For XML view :
<field name="from_date"/>

from odoo import fields, api, models
from odoo.exceptions import ValidationError
from datetime import datetime

class Regular(models.Model):
_name = 'attendance.regular'
_rec_name = 'employee_id'
_description = 'Approval Request'
_inherit = ['mail.thread', 'mail.activity.mixin']

from_date = fields.Datetime(string='Start', required=True)
from_time = fields.Char(compute="_compute_time")
to_date = fields.Datetime(string='End')

def _compute_time(self):
for rec in self:
if rec.from_date:
rec.from_time = datetime.strftime(rec.from_date, "%H:%M:%S")