Определение часового пояса в админке django
Я работаю в проекте с Django бэкендом ( только бэкенд и стандартный админ портал, без сайта), где админ портал используется людьми как в Европе, так и в США.
В связи с этим важно, чтобы время даты на портале администратора отображалось в местном часовом поясе того, кто его использует.
Например, в некоторых моделях я отображаю дату создания экземпляров. Мне нужно, чтобы эти даты отображались в часовом поясе того, кто заходит на портал администратора.
Я искал решения для достижения этой цели (например, предложенные в документации , а также этот пакет ), но все решения, которые я нашел, похоже, сделаны для определения часового пояса конечных пользователей, заходящих на пользовательский сайт, а не на стандартный портал администратора.
Я использую Django 2.2 и Python 3.8.
Одним из методов достижения этого является использование пользовательского поля в Django ModelAdmin.
Ссылки для:
from django.contrib import admin
from django.db import models
class AnItem(models.Model):
title = models.CharField(max_length=150)
creation_date = models.DateField()
@admin.display(description='Local Time')
def local_time_of_creation(self):
local_time = write_logic_to_get_the_local_time_here
return local_time
class AnItem(admin.ModelAdmin):
list_display = ('name', 'local_time_of_creation')