Velocityテンプレートに非常に複雑なダイナミックHTML構造をいくつか追加する必要があります。これらをテンプレートに直接書き込もうとすると、絶対に混乱します。
私がやろうとしていることを説明しましょう...たとえば、私のWebサイトで、ユーザーがコメントを投稿できるとします。コメントテーブルと投稿フォームに含まれるすべての複雑なダイナミックHTML構造を記述するのではなく、テンプレートでこれを実行できるようにしたいと思います。
<div>
// call to a method that generates the comments table
</div>
<div>
// call to a method that generates the comments form
</div>
Ruby On Railsには、ヘルパーと呼ばれるものがあり、テンプレートから、基本的に、動的に生成されたHTMLのチャンクを返すメソッドを呼び出して、呼び出す場所でテンプレートに埋め込むことができます。ヘルパーの良いところは、使用するものだけにCPUを使用することです。このVelocityContext.put()
方法では、必要なものをすべて事前に生成する必要があるようです。これは問題です。最終的には約50の異なるヘルパーが必要になり、プログラマー以外のWebデザイナーがそれらを自由に交換できるようにする必要があるからです。
だから私は尋ねています、
- Velocityでこのようなことをすることはできますか?
- そうでない場合は、他のテンプレートエンジンでこのようなことを行うことができますか?
- 私がやろうとしていることをするためのより良い方法はありますか?