首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >验证必填字段

验证必填字段
EN

Stack Overflow用户
提问于 2015-11-30 22:56:36
回答 1查看 63关注 0票数 1

全。我使用play框架,但我在验证必填字段时遇到了问题。型号:

代码语言:javascript
复制
@Entity
@Table(name = "office")
public class Office extends AppModel{
    @Id
    public Long id;

    @Constraints.Required(message = "asdfasfd")
    public String name;
...
}

控制器:

代码语言:javascript
复制
public static Result update() {
    Form<Office> filledForm = form(Office.class).bindFromRequest();
    if (filledForm.hasErrors()) {
        String errorMsg = getErrors(filledForm.errors());
        flash("error", errorMsg);
        return badRequest(edit.render("Edit", filledForm));

    }
    Office office = filledForm.get();
...
}

查看:

代码语言:javascript
复制
@(title: String, officeFrom: Form[Office])
...
<h1>@officeFrom.get.getName</h1>
...

如果从字段值name中删除表单,则在保存时出现错误

代码语言:javascript
复制
[IllegalStateException: Error(s) binding form: {"name":["Field required"]}]

怎样做才是正确的?

EN

回答 1

Stack Overflow用户

发布于 2015-12-06 02:56:50

这是因为您在模板中调用了@officeFrom.get.

您指定name是必需的,因此当您调用officeFrom.get时,它将验证约束并在值违反约束时生成错误。在您的例子中,"name“是空的。

您需要使用@fficeFrom("name").value -这将不会检查constarints。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34001442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档