Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 烧瓶-jinja2从过滤结果中访问数据_Python_Django_Flask_Jinja2 - Fatal编程技术网

Python 烧瓶-jinja2从过滤结果中访问数据

Python 烧瓶-jinja2从过滤结果中访问数据,python,django,flask,jinja2,Python,Django,Flask,Jinja2,数据: 我试图在jinja2模板中过滤这些数据,并从过滤结果中过滤出值 [ { "name": "fixed", "addr": "172.16.1.100", "active": "Yes" }, { "name": "floating", "addr": "10.

数据:

我试图在jinja2模板中过滤这些数据,并从过滤结果中过滤出值

[
            {
                "name": "fixed",
                "addr": "172.16.1.100",
                "active": "Yes"
            },
            {
                "name": "floating",
                "addr": "10.90.80.10",
                "active": "No"
            }
        ]
这给了我

{{ data|selectattr("name", "equalto", "floating")}}
我想从这个结果中获得活动状态。 我尝试了
{{data | selectattr(“name”、“equalto”、“floating”)| attr(“active”)}
,结果返回为空

正确的方法是什么?在应用jinja过滤器后访问属性“|”

注意:我刚在下面试过,效果很好。问题是当我应用过滤器,然后尝试访问属性时。使用属性方法

{
                "name": "floating",
                "addr": "10.90.80.10",
                "active": "No"
            }

如果您也想筛选活动状态,请尝试此操作

This works
{{ data[0]['active'] }}

This doesnt 
{{ data|first|attr('active') }}

这就是我从你的问题中了解到的,我不知道你到底想要“主动”过滤器做什么

编辑:

如果您只是想从active获得价值,只需执行以下操作:

{{ data|selectattr("name", "equalto", "floating")|selectattr("active", "equalto", "No")|list }}

addr
属性值后缺少逗号。已更新问题。以上只是样本数据。所以问题不在于数据。这不是我想要的。我想要的是使用键访问值。以pythonic的方式“data.get”(“active”)。当我使用筛选器(在本例中为selectattr equalto)时,我无法使其正常工作。希望对筛选器的结果应用get方法。作为临时解决方案,我使用{%set tempdata=data | selectattr(“name”,“equalto”,“floating”)%}然后{{tempdata['active']}.这行得通。有没有办法让这行的通呢?
{{ (data|selectattr("name", "equalto", "floating")|list)[0]["active"] }}