Flaskのテンプレートで配列を使う

Flaskでテンプレートを使えば、固定部分と可変部分を分けることで、編集しやすいページが作れます。しかし、もうちょっと便利にしたい、ということで、繰り返し表示したり、一覧をプログラムと連動させる方法に触れてみます。

例えば、データベースから一覧表示したい名前を取得して表示させたい、といったシーンで利用できるかもしれません。

表示したい一覧を配列に設定しています。内容はいくつあっても構いません。

配列をそのままareaとしてテンプレートに引き渡します。

python側は特に複雑なことをする必要はありません。次にテンプレート

プログラムと似たような形ですが、forを使うことで繰り返しを実現できます。この場合、areaの値を順にiに設定し、なくなるまで繰り返す、という意味になります。areaは、Flaskのコードでarea_listを設定していますので、area_listの配列順に繰り返すことを意味します。

{{ i }}にforループさせている値が順にはいっていますので、それを表示します。この例ではselectのリストとして一覧表示できるようにloopしていることになります。

endforでloopの終了を示します。

これを実際に取得すると、

そのまま繰り返し出力されます。この方法で2次元配列も扱えるので、tableの表の内容を書いたりすることもできます。

適当に過ごす日常blog

50まじかになってフリーになったSEです。今までなんとか生きてこれたので、これからもなんとかなるかなーという適当な日々をつづります。

0コメント

  • 1000 / 1000