1

Play Framework 2 の scala テンプレートで、日付/時刻の入力を生成するメソッドを作成しました。ただし、 HTML引数のようなものを渡す方法がわかりません_label

@dateField(field: Field, timeName: String)(implicit handler: FieldConstructor, lang: play.api.i18n.Lang) = {
    @input(field, '_showConstraints -> false) { (id, name, value, args) =>
        <input type="text" value="@value" name="@name" @toHtmlArgs(args)>
        <input type="text" value='@eventForm(timeName).value()' name="@timeName" />
    }
}

これを呼び出して、ラベルのないフィールドを生成できるようにしたいと思います。

@dateField(eventForm("event.endDate"), "event.endTime", '_label -> "")

これが機能するために何をする必要がありますか?

4

1 に答える 1

3

vargs フィールドを定義する必要があります。Scala では、これはアスタリスクで示されます。詳細については、この回答を参照してください。

コードは次のようになります。

@dateField(field: Field, timeName: String, more: (Symbol, Any)*)(implicit handler: FieldConstructor, lang:  play.api.i18n.Lang) = {
  @input(field, ('_showConstraints -> false :: more.toList) : _*) { (id, name, value, args) =>
    <input type="text" value="" name="@name" @toHtmlArgs(args)>
  }
}
于 2013-01-21T22:40:58.793 に答える