2017-03-17 6 views
0

これは、FlaskのSQL select文で返されるように、辞書のリストからJinja2を使ってHTMLテーブルを作成しようとしています。Jinja2辞書のHTMLテーブルへのリスト?

今、test_listには辞書のリストが格納されています(キーはDB列です)。

は今のところ、これを使用してイム:

<table style="width:100%"> 
    {% for dict_item in history_list %} 
    {% for key, value in dict_item.items() %} 
    <tr> 
     <th> {{ key }} </th> 
     <td> {{ value }} </td> 
    </tr> 
    {% endfor %} 
{% endfor %} 
</table> 

それは作業を行いますが、それは基本的に2列(1キーであること、もう1つは列であること)を製造です。私はテーブルの列タイトルとしてDBキーを取得し、各列に配置された値だけを取得したいと考えています。

これは可能ですか?私はキーを一度反復したいと思っているからです。

答えて

1

これは、thという要素のヘッダー行を提供し、次にデータ行(表の本体)に進む必要があります。

<table style="width:100%"> 
    <!-- table header --> 
    {% if history_list %} 
    <tr> 
    {% for key in history_list[0] %} 
    <th> {{ key }} </th> 
    {% endfor %} 
    </tr> 
    {% endif %} 

    <!-- table rows --> 
    {% for dict_item in history_list %} 
    <tr> 
    {% for value in dict_item.values() %} 
    <td> {{ value }} </td> 
    {% endfor %} 
    </tr> 
    {% endfor %} 

+0

これは完璧で、思考の私のラインがあった場所でした。私は2番目のforループを欠いていた – msmith1114