создание вычислительного поля на основе других полей

#django #django-models #django-forms #django-templates #django-admin

#django #django-модели #django-формы #django-шаблоны #django-администратор

Вопрос:

Я хочу спросить, могу ли я создать поле, отображающее результат вычитания 2 других полей даты на стороне администратора?

Кто-нибудь может мне помочь.

Заранее спасибо

Ответ №1:

В администраторе? Конечно: не поле, а метод, который отображается в списке.

 class MyModelAdmin(admin.ModelAdmin):
    list_display = ('field1', 'field2', 'mymethod')

    def my_method(self, obj):
        return obj.field1 - obj.field2
  

Комментарии:

1. Большое спасибо, да, в администраторе, но все они являются полями данных

2. Это все равно должно работать с полями даты, за исключением того, что результатом будет объект timedelta. Вам нужно будет преобразовать его во что-то полезное — как бы вы хотели, чтобы разница отображалась? Количество дней?

3. еще раз большое вам спасибо, да, я хочу, чтобы это было количество дней.

4. пожалуйста, если у вас есть решение, помогите мне: (я не решил проблему, пока не узнал

5. Я понятия не имею, о чем вы спрашиваете. Этот код работает точно так, как указано. В чем именно проблема?