Проверка числа элементов в массиве в шаблоне Django

Контролируемые исключительные ситуации полезны для восстанавливаемых случаев, где Вы хотите предоставить информацию вызывающей стороне (т.е. недостаточные полномочия, файл, не найденный, и т.д.).

исключения Непроверенные редко используются, если вообще, для информирования пользователя или программиста серьезных ошибок или неожиданных условий во время времени выполнения. Не бросайте их, если Вы пишете код или библиотеки, которыми будут пользоваться другие, поскольку они не могут ожидать, что Ваше программное обеспечение выдаст неконтролируемые исключения, так как компилятор не вынуждает их быть пойманными или объявленными.

36
задан ddaa 9 November 2009 в 14:28
поделиться

4 ответа

нет. но вы можете использовать django-раздражающий , и {% if myarr | length> 1%} будет работать нормально.

6
ответ дан 27 November 2019 в 05:33
поделиться

Печально, но в теге if django нет такой функции. Ходят слухи, что в 1.2 будет добавлен более умный тег if. , по крайней мере, он находится в списке Высокий приоритет .

В качестве альтернативы вы можете использовать тег "smart_if" из djangosnippets.com

ИЛИ вы можете добавить свой собственный фильтр (такой же, как фильтр length_is) - но он просто добавляет больше бесполезного кода: (

from django import template
register = template.Library()

def length_gt(value, arg):
    """Returns a boolean of whether the value is greater than an argument."""
    try:
        return len(value) > int(arg)
    except (ValueError, TypeError):
        return ''
length_gt.is_safe = False
register.filter(length_gt)

Для получения дополнительной информации обратитесь к django docs

4
ответ дан 27 November 2019 в 05:33
поделиться

Это одна из тех возможностей, которые не дает вам язык шаблонов Django. У вас есть несколько вариантов:

  1. Вычислить это значение в вашем представлении и передать его в шаблон в новой переменной.

  2. Установить дополнительную библиотеку тегов шаблона, которая позволит вам получать более подробные сравнения, например: http://www.djangosnippets.org/snippets/1350/

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

2
ответ дан 27 November 2019 в 05:33
поделиться

Может быть этот поможет?

Проверка размеров коллекции в Шаблоны Django несколько ограничены. Единственное решение, которое я использовал, - это передача другого параметра из представления в шаблон - но, честно говоря, это зависит от того, чего вы пытаетесь достичь.

0
ответ дан 27 November 2019 в 05:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: