Согласно этой теме в списке django-developers, я не могу передать константу False
в качестве параметра тегу шаблона Django, поскольку она будет обрабатываться как имя переменной, а не как встроенная постоянная.
Но если я хочу создать шаблонный тэг, нужен параметр true / false, каков рекомендуемый способ создания (в Python) и вызова (в шаблоне) этого тега шаблона?
Я мог бы просто пропустить 1 или 0 внутри шаблона, и он бы работал нормально, но, учитывая, что для создания шаблонов Django не требуется знание компьютерного программирования (например, 1 == True, 0 == False) авторов шаблонов, я был интересно, есть ли более подходящий способ разобраться с этим делом.
Пример определения и использования тега:
@register.simple_tag
def some_tag(some_string, some_boolean = True):
if some_boolean:
return some_html()
else
return some_other_html()
<!-- Error! False treated as variable name in Request Context -->
{% some_tag "foobar" False %}
<!-- Works OK, but is there a better option? -->
{% some_tag "foobar" 0 %}