Как я могу добавить класс к определенной строке на основе даты, записанной в поле строки?

У меня есть инлайн-модель DayOff, в которой я хотел бы сделать серым весь ряд, если дата, введенная в объект DayOff, является прошедшей датой. Есть идеи, как добавить класс или стилизацию ко всей строке на основе поля даты, записанного в ней?

Просто добавьте свойство к вашей модели, например, так

@property
def is_past_date(self):
    return self.date < timezone.now().date():

Затем в вашем шаблоне просто добавьте:

<tr class="{% if model.is_past_date %}bg-grey{% else %}bg-white{% endif % }">

Я сделал предположение, что ваша модель содержит поле "дата" и что ваша модель называется model (в противном случае измените код соответствующим образом). Кроме того, вы указали bg-grey и bg-white в вашем css файле. Конечно, вы можете проверить и другие случаи в вашем свойстве (например, если дата находится между двумя другими датами и т.д.), я думаю, вы поняли суть.

Дайте мне знать, если это поможет.

Вернуться на верх