无法调用自定义模板标签

Unable to call custom template tag

在 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

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

事情不是这样的。 if 标签中的任何内容都必须是模板变量,而不是标签。

您可以使用 as 语法将标记的结果保存到一个变量中并使用:

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