我正在 PlayFramework 2.1 中开发应用程序。但是,我没有使用表单助手,例如:@inputText,我正在编写自己的 HTML。
如何在不使用表单助手的情况下显示错误消息?因为,如果我使用表单助手,则会显示错误消息。
我正在 PlayFramework 2.1 中开发应用程序。但是,我没有使用表单助手,例如:@inputText,我正在编写自己的 HTML。
如何在不使用表单助手的情况下显示错误消息?因为,如果我使用表单助手,则会显示错误消息。
在官方文档中,简要说明了如何在没有默认帮助器的情况下编写自己的输入(例如),请查看此处的“编写自己的字段构造器”部分
为了回应您的第二条评论,我正在添加一个示例,说明如何在这篇文章中编写您自己的模板以澄清一点。这个例子对官方文档中的解释做了一些补充。 这篇文章与这个问题有关,也很有帮助。
首先,您必须创建一个模板,为此,请转到 /app/views/afolderyoulike 并创建 myField.scala.html(例如)。添加此示例代码,您可以根据需要对其进行调整:
@(elements: helper.FieldElements)
<div class="@if(elements.hasErrors) {error}">
<label for="@elements.id">@elements.label</label>
<div class="input">
@elements.input
<span class="errors">@elements.errors.mkString(", ")</span>
</div>
</div>
然后,您拥有表单的视图将类似于以下代码:
@(title: String, formSignup: Form[models.commerce.CommerceSignupRequest])
@import play.data.Form
@import helper._
@implicitField = @{ FieldConstructor(myField.f) }
@main(title) {
<div class="container">
@form(action = routes.CommerceController.signup()) {
<fieldset>
<legend>@title</legend>
@inputText(formSignup("commerceName"))
@inputText(formSignup("blabla1"))
@inputText(formSignup("blabla2"))
</fieldset>
<button type="submit" id="submit-btn" name="submit" class="btn">Send</button>
}
</div>
}
这里重要的代码片段是:
希望有帮助。