2

テンプレートの用途とは逆のことをしたいのですが、テンプレートを作成し、テンプレートに存在するさまざまなタグとプレースホルダーの表現をプログラムで導出して、最終的にフォームを生成したいと考えています。

別の言い方をすれば、通常、データを取得してテンプレートに入力する場合、テンプレートを取得して、ユーザーに適切なデータを入力してもらいたいと考えています。

例 (疑似構文を使用):これにより、 「name_of_entity」という名前のタグと 3 (「World」、「Universe」、「Stackoverflow」)を持つHello {{ name_of_entity only-in ['World', 'Universe', 'Stackoverflow'] }}!
フォームを生成する必要があることをプログラムで導き出すことができました。selectoptions

私は Jinja2 を調べましたが、それを使用して拡張することで目標を達成できるようです (たとえそれが他の方法で行われたとしても)。しかし、場合によってはどうすればいいのかまだわかりません。

  • {{ weekday }}でのみ値を持つことを表現したい場合['Mo', 'Tu', ...]
  • {{ amount }}変数が整数のみを受け入れることをテンプレートで表現したい場合...

Jinja は、これらの目標を達成するための優れた基盤となりますか? はいの場合、どのようにそれを行うことをお勧めしますか?

4

1 に答える 1

1

特に、完全なレクサーとパーサーが含まれているため、Jinja はこれを構築するのに理にかなっていると思います。それらを活用して、必要なことを行う独自のバージョンを派生させることができます。

于 2013-03-29T13:52:42.583 に答える