Effective Jinjaテンプレートのリファクタリングとテスト - 第1回
(engineering.ab180.co)- 既存のJinjaテンプレートの問題点
→ 要件に合わせてテンプレートへあれこれ機能を継ぎ足していくと、テンプレートのレンダリングに必要なデータ量が増え、1つのテンプレートファイルの中に複数の機能がごちゃ混ぜに入り込むようになる。ひとことで言えば、レガシー化した野生のJinjaテンプレートになってしまう。
- Jinja templateをどうすればよりうまく管理できるだろうか?
→ コードの凝集性を考慮してMacroを使って分離する
→ レンダリング時に渡すデータをすべてdictに入れるのではなく、dataclassを活用して各マクロで使うデータをまとめる
- テスト内容はないようですが?
→ 次の第2回では、Jinja AST分析を通じて抜けている変数がないかを検査する内容を扱う予定です
まだコメントはありません。