Tôi có lịch javascript đang gửi cho tôi một unixtimestamp. Tôi đang ở Singapore. Tôi muốn dấu thời gian này được hiểu là dấu thời gian của Singapore và sau đó được chuyển đổi thành utc để so sánh với db.Dấu thời gian Unix để datetime trong django với múi giờ
Tôi không thể, cho cuộc sống của bản thân mình, tìm ra cách nói với django rằng dấu thời gian này là từ múi giờ hiện tại, Singapore.
Khi tôi làm một tuyên bố in của dấu thời gian, nó bổ sung thêm 8 giờ để thời gian (có nghĩa là django nghĩ rằng tôi đầu vào thời điểm đó trong utc và được bản địa hóa nó vào bối cảnh Singapore)
Trong số nhiều thứ khác , tôi đã cố gắng: start=datetime.datetime.fromtimestamp(int(start_date)).replace(tzinfo=get_current_timezone())
các start_date là 1325376000 (mà dịch để 2012-01-01 00:00:00)
Tuy nhiên, khi tôi in ra những điều này tôi nhận được 2012/01/01 08 : 00: 00 + 06: 55. Tôi thậm chí không biết nơi +06: 55 đến từ khi singapore là +08: 00. Tôi đang bị lạc.
Cảm ơn sự giúp đỡ của bạn.
settings.py:
TIME_ZONE = 'Asia/Singapore'
USE_TZ = True
dấu thời gian posix '1325376000' là '' 2012-01-01 00:00:00 UTC + 0000'' và' '2012-01-01 08:00:00 SGT + 0800''. Tại sao bạn nghĩ nó phải là '00: 00: 00' ở Singapore? – jfs