我试图生成我的观点而不是基本的scala,因为我不太了解它。
因为这个原因我只写html使表单成为我唯一的问题是得到表单可能有的错误
我在我的控制器上使用:
badRequest(register.render(form));
和我的观点
<label for="name">Name:</label>
<input type="text" class="input-block-level" placeholder="Last Name" name="name">
<dl class="input-block-level error" id="name_field">
<dd class="error">@if(registrationForm.hasErrors) {
@registrationForm.errors.get("name")}</dd></dl>
这将在屏幕上打印[ValidationError(name,error.required,[])]
我知道帮助器具有'_error -> registrationForm.globalError
属性但我不喜欢生成的代码(主要是标签)
如何通过scala获取所有错误?
编辑1: 所以我将视图代码更改为以下
@if(registrationForm.error("name")!=null) {
<dl class="input-block-level error" id="name_field">
<dd class="error">
@registrationForm.error("name").message</dd></dl>
这会打印字段错误,但只显示消息键而不是消息值,例如error.required,而不是默认消息,此字段是必需的
答案 0 :(得分:0)
好的,所以我得到了我想要的结果,以防任何人有兴趣制作没有帮助者的表格
<input type="text" class="input-block-level" placeholder="Name" name="name">
@if(registrationForm.error("name")!=null) {
<dl class="input-block-level error" id="name_field">
<dd class="error">
@Messages(registrationForm.error("name").message)</dd></dl> }
答案 1 :(得分:0)
从2.1开始以前不起作用,实际上.error(key)是一个Option [FormError]所以这个:
@if(form.error("name")){<span class="help-inline">@Messages(form.error("name").message)</span>}
变为:
@if(form.error("name")){<span class="help-inline">@Messages(form.error("name").get.message)</span>}