首页 > 解决方案 > Django:如何在模板中调用“包含”函数?

问题描述

我需要知道如何contains在 Django 模板中使用。

我想做这样的事情:

鉴于:

my_query = MyClass.objects.filter(key=value).my_var

并在如下模板中:

{% if my_query contains 'X' %}
    <p>My var contains an X</p>
{% endif %}
{% if my_query contains 'Y' %}
    <p>My var contains a Y</p>
{% endif %}

我已经知道的其他方式是通过验证视图:

my_query_X = MyClass.objects.filter(my_var__contains='X').exists()
my_query_Y = MyClass.objects.filter(my_var__contains='Y').exists()

然后在模板中:

{% if my_query_x == True %}
    <p>My var contains an X</p>
{% endif %}
{% if my_query_y == True %}
    <p>My var contains a Y</p>
{% endif %}

但我不想使用最后一个选项,因为它需要更多查询才能查看。

标签: pythondjangocontains

解决方案


您可以使用in

{% if 'X' in my_query %}
    <p>My var contains an X</p>
{% endif %}
{% if 'Y' in my_query %}
    <p>My var contains a Y</p>
{% endif %}

推荐阅读