Play 2.0テンプレートに補助コンストラクターを含めることは可能ですか?
質問する
174 次
1 に答える
2
「コンストラクター」とは、異なる引数を持つ引数リストを意味すると思います。これを行う組み込みの方法はわかりませんが、Play の学習を始めたばかりです。
ただし、Enhance My Instance ™ パターンを使用して同じ効果を得ることができます。
やることリストの例を使用して、index.scala.html
テンプレートが次のように始まるとします。
@(tasks: List[Task], taskForm: Form[String])
Application.scala
あなたはこれを
def tasks = Action { Ok(views.html.index(Task.all(), taskForm)) }
タスク リストを省略したい場合:
implicit def enhanceIndex(index: views.html.index.type) = new {
def apply(f: Form[String]) = index(List.empty, f)
}
これで、次のように呼び出すことができます。
def tasks2 = Action { Ok(views.html.index(taskForm)) }
.type
これは基本的に、範囲を特定のインスタンス (この場合はviews.html.index
オブジェクト) に狭めるために使用する pimp-my-library パターンにすぎません。
于 2012-04-22T11:14:08.987 に答える