実現したいこと
Python Djangoでアプリケーションを作成しています。
Viewで作成したデータをDjangoテンプレートで表示しようとしております。
具体的には、従業員の勤務時間を集計し表示するというものになります。
発生している問題
データベースより勤務データを取得し、集計の上テンプレートに渡すという一連の流れはできています。
しかし、集計したものを思い通りに表示することができていません。
該当のソースコード
Viewで作成したデータは以下のようなリストになります。
emp_data [ {'emp_code': 'A0001', 'emp_name': '山田太郎', 'time_h': {'2017/10': 45.0}} {'emp_code': 'A0002', 'emp_name': '川上次郎', 'time_h': {'2017/10': 40.0, '2017/11': 93.5, '2017/12': 56.0}} {'emp_code': 'A0003', 'emp_name': '大井三郎', 'time_h': {'2017/09': 20.0, '2017/11': 80.0, '2017/12': 50.0}} ... ]
勤務時間(time_h)は月ごとに集計したもので、従業員によって月ごとにあったりなかったりします。
以上のデータを、以下のように表示するためのDjangoテンプレートを作成しています。
|従業員コード|従業員名|2017/08|2017/09|2017/10|2017/11|2017/12|
|:--|:--:|--:|
|A0001|山田太郎|||45.0|
|A0002|川上次郎|||40.0|93.5|56.0|
|A0003|大井三郎||20.0||80.0|50.0|
以下が現在作成中のDjangoテンプレートです。
Python
1{% load static %} 2 3<html> 4 <head> 5 <title>勤務データ</title> 6 </head> 7 <body> 8 <div> 9 <h1>勤務データ</h1> 10 </div> 11 12 <table border="1"> 13 <tr> 14 <th rowspan="2">従業員コード</th> 15 <th rowspan="2">従業員名</th> 16 <th colspan="{{ym_arr|length}}">勤務時間</th> 17 </tr> 18 <tr> 19 {% for ym in ym_arr %} 20 <th>{{ ym }}</th> 21 {% endfor %} 22 </tr> 23 {% for ed in emp_data %} 24 <tr> 25 <td>{{ ed.emp_code }}</td> 26 <td>{{ ed.emp_name }}</td> 27 28******************************************************************** 29ここをどう書けばいいのかがわかりません。 30******************************************************************** 31 32 </tr> 33 {% endfor %} 34 </table> 35 </body> 36</html>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。