Django:如何在模板中调用“包含”功能?

时间:2019-02-27 14:00:16

标签: python django contains

我需要知道如何在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 %}

但是我不想使用最后一个选项,因为这样会需要更多查询才能完成。

1 个答案:

答案 0 :(得分:2)

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