Playframework 如何在play framework中将日期验证限制设置为32

Playframework 如何在play framework中将日期验证限制设置为32,playframework,playframework-2.3,Playframework,Playframework 2.3,我正在尼泊尔开发一个应用程序,所以我必须按照当地时间,按照尼泊尔日历存储日期。根据尼泊尔历法,日期限制为32“32/12/2015”。在将日期绑定到31日时没有问题,当我查看32时,它在表单中显示“error.invalid”error。 有没有办法把日期限制在32天。 抱歉语法不好,请提前感谢……您没有提到开发应用程序时使用的语言 在Java中,您可以创建自定义数据格式化程序来绑定表单中的值。下面是如何编写一个示例: package example.formatters; 导入play.dat

我正在尼泊尔开发一个应用程序,所以我必须按照当地时间,按照尼泊尔日历存储日期。根据尼泊尔历法,日期限制为32“32/12/2015”。在将日期绑定到31日时没有问题,当我查看32时,它在表单中显示“error.invalid”error。 有没有办法把日期限制在32天。
抱歉语法不好,请提前感谢……

您没有提到开发应用程序时使用的语言

在Java中,您可以创建自定义数据格式化程序来绑定表单中的值。下面是如何编写一个示例:

package example.formatters;
导入play.data.format.Formatters.SimpleFormatter;
导入java.util.Date;
公共类DateFormatter扩展了SimpleFormatter{
@凌驾
公共日期解析(字符串值、区域设置)引发ParseException{
if(value==null | | value.length()==0){
返回null;
}
if(isStringDate(值)){
返回convertStringToDate(值);
}
抛出新的ParseException(值,0);//如果值不是正确的日期,则抛出异常
}    
@凌驾
公共字符串打印(日期d,区域设置){
返回convertDateToString(d);
}
}
实现自定义格式化程序后,需要将其注册为数据类型(例如,在应用程序的全局类中):

package应用程序;
导入play.GlobalSettings;
导入play.Logger;
导入java.util.Date;
导入示例.formatters.DateFormatter;
公共类全局扩展全局设置{
@凌驾
公共void onStart(应用程序应用程序){
register(java.util.Date.class,new DateFormatter());
}
}

谢谢你,波威尔。我在控制器中使用了瞬态字符串字段和转换的日期。