表单验证在Play中使用子对象进行约束

时间:2012-03-27 01:59:01

标签: java playframework validation playframework-2.0

我正在尝试在Play Framework 2.0中创建一个公平复杂的表单。我没有将所有字段都放在主窗体模型类中,而是将其分解为子对象。遗憾的是,这似乎不适用于验证限制。绑定似乎确实有效,所以我最终得到了正确填充的对象。

是否有某种方法可以对子对象进行验证。请参阅以下模型和视图代码。客户端下的电子邮件地址未经过验证。

表单模型:

public class Inspection {
    // This works!
    @Email
    private String email;

    private Client client;

    // ... getters and setters
}

public class Client {
    // This does not work
    @Email
    private String email;

    // ... getters and setters
}

查看:

@inputText(inspectionForm("email"), '_label -> "Email Address 1")
@inputText(inspectionForm("client.email"), '_label -> "Email Address 2")

1 个答案:

答案 0 :(得分:5)

尝试在客户端上使用@Valid注释

public class Inspection {
    // This works!
    @Email
    private String email;

    @Valid
    private Client client;

    // ... getters and setters
}