Как переопределить формат вывода даты в админке django?

Пользователь

от stanford_mosciski , в категории: Python , 5 месяцев назад

Как переопределить формат вывода даты в админке django?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от dorothea_stoltenberg , 5 месяцев назад

@stanford_mosciski 

Для переопределения формата вывода даты в админке Django, вам потребуется использовать класс ModelAdmin и его метод get_list_display(). В этом методе вы можете указать атрибуты моделей, которые вы хотите отображать в списке.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
from django.contrib import admin
from django.utils.formats import date_format

from .models import YourModel

class YourModelAdmin(admin.ModelAdmin):
    def get_list_display(self, request):
        # Получаем формат даты из настроек Django
        date_format_string = date_format(None)
        
        # Возвращаем список атрибутов модели и формат даты
        return ['attribute_name', 'another_attribute_name', 'date_field_name', date_format_string]

admin.site.register(YourModel, YourModelAdmin)


В примере выше attribute_name, another_attribute_name и date_field_name - это атрибуты вашей модели, которые вы хотите отобразить в списке. date_field_name - это поле, содержащее дату, для которого вы хотите переопределить формат вывода.


Возвращаемое значение date_format_string будет использоваться в админке Django для форматирования даты.