无法调用自定义模板标签

时间:2019-07-06 15:44:06

标签: django django-custom-tags

在html页面中,我试图调用django自定义模板标签,但在我看来,它从未达到该模板标签功能。

home.html页面

{% load custom_tags %}
{% if has_profile %}
  <p> Creator </p>
{% else %}
  <li><a href="{% url 'update_profile' %}" class="btn btn-simple">Become a Creator</a></li>
{% endif %}

custom_tags.py

从django导入模板

from users.models import Profile

register = template.Library()

@register.simple_tag
def has_profile():
    return 1

如果您需要任何信息,请告诉我。谢谢!

1 个答案:

答案 0 :(得分:0)

这不是它的工作方式。 if标记中的任何内容都必须是模板变量,而不是标记。

您可以使用as语法将标签的结果保存到变量中,并使用该变量:

{% has_profile as has_profile_result %}
{% if has_profile_result %}
    ...