0

HTML で次のデータ構造を解析しようとしています。

{'GROUPS': {'Group1': [{'key1':'value1','key2':'value2'}, {'key1':'value3', 'key2':'value4'}], 'Group2': [{'key1':'value5','key2':'value6'}, {'key1':'value7', 'key2':'value8'}]}}

私が持っている解析コードは次のとおりです。

<tbody>
{% for group,data in data|get_value:"GROUPS" %} 
<tr>
    <td>{{ group }}</td>
    {% for v in data.items %}
    <tr>
        <td>{{ v|get_value:"key1" }}</td>
        <td>{{ v|get_value:"key2" }}</td>
    </tr>
    {% endfor %}
</tr>
{% endfor %}
</tbody>

get_value は、基本的にキーとデータ構造を受け取り、値を返すカスタム フィルターです。

しかし、これは機能していません。誰でも理由を理解するのを手伝ってもらえますか? ありがとう!

4

1 に答える 1

1

まず、定数キーの場合、カスタム フィルターは必要ありません。これで問題なく動作します。

{{ v.key1 }}

つまり、 dict であり、 で行ったように、data['GROUPS']その を反復処理したいと考えています。itemsdata

dataただし、リストであり、それは必要ありません。

<tbody>
{% for group, data in data.GROUPS.items %} 
<tr>
    <td>{{ group }}</td>
    {% for v in data %}
    <tr>
        <td>{{ v.key1 }}</td>
        <td>{{ v.key2 }}</td>
    </tr>
    {% endfor %}
</tr>
{% endfor %}
</tbody>
于 2013-03-15T22:46:16.053 に答える