Django:如何在模板中调用 "contains" 函数?

Django: how to call "contains" function in a template?

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

我想做这样的事情:

在视图中:

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 %}

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

您可以使用 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 %}