Сравнение даты в базе данных с текущей датой - PullRequest
1 голос
/ 06 августа 2010

В моем приложении у меня есть дата выступления, и я хочу сравнить ее с текущей датой, чтобы увидеть, должна ли она отображать «Просмотр записи о посещаемости» на моей html-странице.Что я думаю:

if (dateInDB <= currentDate)
    display View Attendance Record
else 
    don't display view attendance record

Как мне преобразовать это в код?Должен ли я сделать это в HTML или во внешнем файле, к которому обращается HTML.Если бы я делал это в JSP и сервлетах, я бы сделал сравнение, когда он извлекает дату из базы данных, а затем установил логическое значение true, но я не знаю, как это сделать в django.Заранее спасибо,
Дин

1 Ответ

1 голос
/ 06 августа 2010

Django 1.2 поддерживает логические операторы в if тегах. Если вы используете 1.2, то можете передать контекстную переменную currentDate подходящего типа в шаблон и выполнить логическое сравнение.

{% if dateInDB <= currentDate %}
    <display>
{% else %}
    <hide>
{% endif %}

Также вы можете написать собственный фильтр для проверки, если dateInDB <= currentDate.

@register.filter
def less_than_current_date(value):
    from datetime import datetime as DT
    return value <= DT.today()

{% if dateInDB|less_than_current_date %}
... etc ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...