I want to store in my data base the time stamp of an operation. The problem is that the time that I get from datetime.datetime.now()is incorrect (I guess it's due to time zone). I tried getting the value in the terminal using python and got the correct result.
import datetime
datetime.datetime.now()//correct time
However if I print the result during problem execution the output is incorrect, the result is two hours earlier.
Why is it like that, that the terminal gives me the correct time but the program instance isn't, how can I get the correct time in my program?
Edit:
The date time from the terminal:
2018-08-30 17:41:04.413187
The date time from program instance:
2018-08-30 14:42:31.761310
Edit:
I noticed that I have this warning when I run the program.
RuntimeWarning: DateTimeField Policy.last_update received a naive datetime (2018-08-30 15:16:23.689896) while time zone support is active.
RuntimeWarning)
解决方案
Try this adjusting the number of hours depending on the timezone you are:
import datetime
datetime.datetime.utcnow()+datetime.timedelta(hours=3)