Flaskのテンプレートで配列を使う
2020.05.03 07:41
Flaskでテンプレートを使えば、固定部分と可変部分を分けることで、編集しやすいページが作れます。しかし、もうちょっと便利にしたい、ということで、繰り返し表示したり、一覧をプログラムと連動させる方法に触れてみます。
例えば、データベースから一覧表示したい名前を取得して表示させたい、といったシーンで利用できるかもしれません。
①
表示したい一覧を配列に設定しています。内容はいくつあっても構いません。
②
配列をそのままareaとしてテンプレートに引き渡します。
python側は特に複雑なことをする必要はありません。次にテンプレート
③
プログラムと似たような形ですが、forを使うことで繰り返しを実現できます。この場合、areaの値を順にiに設定し、なくなるまで繰り返す、という意味になります。areaは、Flaskのコードでarea_listを設定していますので、area_listの配列順に繰り返すことを意味します。
④
{{ i }}にforループさせている値が順にはいっていますので、それを表示します。この例ではselectのリストとして一覧表示できるようにloopしていることになります。
⑤
endforでloopの終了を示します。
これを実際に取得すると、
そのまま繰り返し出力されます。この方法で2次元配列も扱えるので、tableの表の内容を書いたりすることもできます。