数百万行のデータを含む MySQL データベースがあります。また、そのデータを DB に永続化する役割を担うアプリケーションもあります。
私のアプリケーション設定では、特定のタイムゾーンを使用しています: 例: TIME_ZONE = 'America/Montreal'.
私は USE_TZ = True パラメーターを使用していません (そのため、DB に TimeZone の認識されない日時があると言います)。
問題は、私のサーバーはモントリオールにありますが、それにアクセスする人々は世界中に散らばっており、当然のことながら、彼らが見る日付は悪い解釈を受けているということです.
だから、私は pytz と django.utils.timezone の使用についていくつか読んだことがありますが、まず、タイムゾーン「パーティクル」を追加してデータベースデータエントリを更新する必要があると思います。これにより、日時を各ユーザーのタイムゾーン (プレゼンテーション モード)。
DB の作成から現在まで、サーバーは常にモントリオールにあり、日時は確かにそのタイムゾーンからのものであるため、これが私のアプローチです。しかし、いつの日か、サーバーの場所を変更して TIME_ZONE の設定を変更したいと思うかもしれません。また、日時が作成された実際のタイムゾーンを「FROM」にキャストする古代の日時を表示できるようにしたいと考えています。
DateTime である私の python オブジェクト属性の 1 つの例: end = models.DateTimeField(null=True, blank=True)