получить конкретную дату в шаблоне django Django

Привет, мне нужно проверить 10-е число каждого месяца в файле шаблона django, может кто-нибудь сказать мне, как я могу проверить это на самом деле, мне нужно показать некоторые данные до 10 числа каждого месяца и скрыть это после 10-го

One Solution collect form web for “получить конкретную дату в шаблоне django Django”

Несколько вещей, чтобы понять:

  1. Язык шаблонов Django на самом деле не разработан вокруг «реального» программирования. По сути, это просто строение строк.
  2. Он не поддерживает реальные «выражения».
  3. … но он поддерживает базовые условные обозначения и циклы.
  4. Поэтому, пока вы можете проверить, равно ли значение или больше или меньше другого значения, вы не можете сделать гораздо больше.
  5. Если вы не используете фильтр или собственный тег шаблона.
  6. Фильтры могут преобразовывать значения из одной вещи в другую.
  7. Теги шаблонов могут делать более сложные вещи, которые выходят за рамки этого вопроса.
  8. Хотя либо фильтр, либо собственный тег шаблона могут попасть туда, куда вы хотите пойти, они будут излишними.

Поэтому, на мой взгляд, самый простой способ сделать это:

  1. Вычислите день текущей даты в вашем представлении.
  2. Передайте это значение вашему шаблону.
  3. Проделайте простую проверку «если больше, чем» на переданное значение по отношению к числу 10.

Итак, наш взгляд будет выглядеть примерно так:

def sample_view(request, *args, **kwargs): from datetime import date current_date = date.today() current_day = int(current_date.day) # force a cast to an int, just to be explicit return render_to_response("template", {'day_of_the_month': current_day }) 

И в нашем шаблоне мы бы сделали:

 {% if day_of_the_month > 10 %} <!-- Stuff to show after the 10th --> {% else %} <!-- Stuff to show before the 10th --> {% endif %} 

Это действительно подвергает материал шаблону, который вы можете скрывать, исходя из даты из соображений безопасности. Вы никогда не должны скрывать защищенные вещи в шаблоне на основе проверки if / then.

Если вам нужно выполнить дополнительные проверки, вы можете просто пройти в current_date и проверить current_date.day на число 10, а не на определенную передачу в этот день. Он был бы менее явным, но более общим и гибким.

  • Уровень изоляции транзакций в Django ORM
  • Как получить больше диагностического результата в ошибке «no module named xyz»?
  • Django REST Framework: возвращает 404 (не 400) в POST, если родственное поле не существует?
  • Как создать поле пароля в модели django
  • Как запросить модель, где имя содержит любое слово в списке python?
  • Может ли это быть достигнуто посредством агрегации?
  • Ошибка: ни один модуль с именем staticfiles
  • Django не обслуживает статические файлы, получая 404 ошибки
  • как получить имя дня в datetime в python
  • Почему django не поддерживает пул соединений?
  • Таблица была удалена, как я могу заставить Django воссоздать ее?
  •  
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.