Custom Field Constructors

    所有的输入 helper 都会接受一个隐式(implicit)的 FieldConstructor 来处理这一部分。默认的构造器(在作用域内没有指定其他域构造器时会被调用),生成的 HTML 类似于:

    这个默认的域构造器支持传入额外的选项到输入 helper:

    1. '_label -> "Custom label"
    2. '_id -> "idForTheTopDlElement"
    3. '_error -> "Force an error"
    4. '_showErrors -> false

    注意: 这只是一个例子。你想要实现多复杂的功能都可以。你同样还能使用 .field 来获取原始的表单域。

    现在使用模板函数来创建 FieldConstructor:

    1. implicit val myFields = FieldConstructor(html.myFieldConstructorTemplate.f)
    2. }

      模板会使用你的域构造器来渲染输入文本。

      你也可以为 FieldConstructor 设置一个隐式(implicit)的值:

      1. @helper.inputText(myForm("username"))