【第5回】 2022年6月9日
テンプレートにおけるプログラミング
変数とフィルター
if と for
その他のテンプレートタグ
oTree 3 との違い
oTree 3 はDjangoがベースであったため,Djangoの組み込みフィルターが使えたが, oTree 5 では,Djangoの組み込みフィルターが(ほとんど)使えなくなった.oTree 3 から oTree 5 へ移行するときは注意.多用されていたと思われるフィルターは以下:
floatformat:0: 整数への(銀行家の)丸め. oTree 5 ではto0に変更されたが,切り下げとなることに注意.add: テンプレートで変数の足し算ができた(たとえば{{ x|add:"1" }}とすれば xに1を足した数値が表示されていた).date: 変数がdatetimeオブジェクトであれば,日付が人間が読める書式に変換されて表示されていた.
テンプレートタグのデリミタが
{% %}から{{ }}に変更され,テンプレートタグと変数の記述方法が縮退してしまった.- oTree 5 でも互換性のために
{% %}は使える.ただし,{%と{{,%}と}}をそれぞれ区別しないという実装のようなので,"と'の関係のようにネストさせて使えるというわけではない.
- oTree 5 でも互換性のために