Как отобразить текущий год в шаблоне Django?

116

Что такое встроенный тег шаблона для динамического отображения текущего года. Как "2011", каков будет тег шаблона для отображения этого?

Теги:

5 ответов

209
Лучший ответ

Полный тег для печати только текущего года {% now "Y" %}. Обратите внимание, что Y должен быть в кавычках.

  • 4
    Напомним, что {% now%} не даст правильных результатов пользователям в другом часовом поясе, чем сервер.
  • 22
    @Thomas Правда в некоторых случаях, однако, наиболее распространенный вариант использования, который я видел для получения желаемого текущего года, - это уведомление об авторском праве, и на самом деле не так важно, чтобы он был идеальным в течение этих 24 часов, в то время как 1 января пробивается вокруг. мир.
Показать ещё 3 комментария
23

{% now 'Y' %} - правильный синтаксис

11
  • 1
    Возможно, вы забыли эту дополнительную информацию: docs.djangoproject.com/en/1.3/ref/templates/builtins/…
  • 7
    Нет, я не забыл ссылку на документы.
0

Используйте django-copyright, если вы хотите охватить диапазон, например " 2010 - 2015", или просто установите приложение в текущем году, например, " 2015".

-2

В моем шаблоне, кроме текущего года, мне понадобилось выпустить год истечения срока действия кредитной карты с 20 значениями (начиная с текущего года). Значения select должны быть 2 цифры, а строки дисплея - 4 цифры. Чтобы избежать сложного кода шаблона, я написал этот простой тег шаблона:

@register.filter
def add_current_year(int_value, digits=4):
    if digits == 2:
        return '%02d' % (int_value + datetime.datetime.now().year - 2000)
    return '%d' % (int_value + datetime.datetime.now().year)

И использовал его следующим образом:

<select name="card_exp_year">
    {% for i in 'iiiiiiiiiiiiiiiiiiii' %}
    <option value="{{ forloop.counter0|add_current_year:2 }}">{{ forloop.counter0|add_current_year:4 }}</option>
    {% endfor %}
</select>
  • 0
    слишком длинный ответ!
  • 0
    @mohammedqudah, зависит от ваших потребностей!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню