gpt4 book ai didi

java - 当用户输入字母字符时,Play 对数字字段进行验证

转载 作者:行者123 更新时间:2023-11-30 05:56:39 26 4
gpt4 key购买 nike

使用 Play!框架,我有一个字段要求用户输入大于零的数值。在我的 Controller 中,我有这样的东西:

public static void save(@Min(value = 1, message = "Age must be greater than zero") int age) {
...
}

这按预期工作,如果用户输入零或更少,则会显示错误消息。但是,如果用户输入类似 abc 的内容,则屏幕上显示的消息会显示值不正确

在这种情况下,我需要做什么才能让 UI 显示更加用户友好的错误消息?

最佳答案

您可以尝试使用正则表达式来检查参数是否为数字。

public static void save( @Match(value = "[0-9]+", message="Age must be numeric")
@Min(value = 1, message="Age must be greater than zero") int age ) {
...
}

解决方法也可能是覆盖不正确值的消息。

将其放入您的消息文件中。

validation.invalid=%s must be numeric

但是,这将改变整个应用程序的消息,并且可能并不总是合适的。

另一种可能的解决方案是清除验证,然后在保存方法中调用您想要的所有验证:

public static void save( int age ) {
validation.clear();
validation.min(age, 1);
...
}

这将清除所有已自动完成的验证。然后您可以自己调用验证。

关于java - 当用户输入字母字符时,Play 对数字字段进行验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6854817/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com