यह समझाने के लिए एक जटिल बंधन है। Django 1.4 से ,
यह TIME_ZONE
. को संदर्भित करता है . तो आपका USE_TZ
क्या है? ? अगर आपका USE_TZ
सही है तो Django UTC में डेटाटाइम स्टोर करेगा और TIME_ZONE
का उपयोग करेगा टेम्प्लेट में प्रदर्शित करने और रूपों की व्याख्या करने के लिए।
ऐसा इसलिए है, क्योंकि यदि आप अपना TIME_ZONE
बदलते हैं बाद में जब आपकी साइट को किसी अन्य क्षेत्र में होस्ट किया जाता है, तो यूटीसी से किसी भी डेटाटाइम को दिए गए किसी भी समय क्षेत्र में परिवर्तित करना आसान होता है।
Django 1.3 में और पहले,
लेकिन आपको यह नहीं बताता कि डेटाबेस में डेटाटाइम किस समय क्षेत्र में संग्रहीत किया जाएगा। वैसे भी प्रयोग करने की आवश्यकता है (मेरा अनुमान यूटीसी है)।
print datetime.datetime.now()
आपके सर्वर मशीन के टाइमज़ोन सेटअप के अनुसार डेटाटाइम प्रिंट करता है जब तक कि आपने manage.py shell
के माध्यम से पायथन कंसोल नहीं खोला है ।
वही MySQL कंसोल के लिए जाता है। अगर मैं सही हूं तो यह डेटाबेस में संग्रहीत होने के बजाय आपके मशीन टाइमज़ोन में डेटाटाइम दिखाता है।