繁体   English   中英

带有“ if”的Django简单模板标签

[英]Django simple template tag with “if”

我有一个简单的自定义模板标签:

@register.simple_tag
def show_language_choice_dropdown_menu():
    return SHOW_LANGUAGE_CHOICE_DROPDOWN_MENU

从设置中获取布尔值。 如果我简单地将其放在文本中就没有问题,则显示正确的值,但是如果我尝试检查:

{% if show_language_choice_dropdown_menu %}

它不起作用-每次都是False。 怎么了?

我想知道您是否可以这样做。 if语句查找变量show_language_choice_dropdown_menu ,可能没有这样的变量。 尝试改用赋值标签:

@register.assignment_tag
def show_language_choice_dropdown_menu_tag():
  return SHOW_LANGUAGE_CHOICE_DROPDOWN_MENU

然后按以下方式使用它:

{% show_language_choice_dropdown_menu_tag as show_language_choice_dropdown_menu %}
{% if show_language_choice_dropdown_menu %}

有关更多信息,请参阅https://docs.djangoproject.com/en/1.8/howto/custom-template-tags/#assignment-tags

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM