我正在尝试实施密码更改。
我在scala中得到以下两行。但是,即使我在两个字段(Password
& Confirm Password
)中输入了不同的密码,它也会保存第一个字段密码而不进行验证。
如果输入了不同的密码,我需要它来验证并显示消息。
@helper.inputPassword(accountForm("Password"),'id -> "f_password", '_label -> "Password", 'placeholder -> "**********")
@helper.inputPassword(accountForm("Password"),'id -> "f_password", '_label -> "Confirm Password", 'placeholder -> "**********")
我用谷歌搜索但似乎无法找到确切的解决方案。非常感谢任何帮助。
更新
我在NewPasswordController.java的控制器中有以下方法
public class NewPasswordController extends Controller {
public static class NewPassword {
@Required
protected String newPassword = "";
@Required
protected String confirmPassword = "";
public String getNewPassword() { return this.newPassword; }
public void setNewPassword(String newPassword) { this.newPassword = newPassword; }
public String getConfirmPassword() { return this.confirmPassword; }
public void setConfirmPassword(String confirmPassword) { this.confirmPassword = confirmPassword; }
public String validate() {
if(!newPassword.equals(confirmPassword)) {
return "Opps, it seems that you may have mis-typed the password, please try again.";
}
return null;
}
}
但我不知道如何在我的SCALA中使用它。
我试过跟随
@helper.form(action = routes.NewPasswordController.NewPassword()) {
但这不起作用,因为我的路线文件没有它。所以,我不确定如何在路线中提及NewPasswordController(我的意思是它得到或设置)。
答案 0 :(得分:1)
不知道你使用的方式实际上是否有效, 但我认为你需要两个密码输入
@helper.inputPassword(accountForm("password"),'id -> "f_password", '_label -> "Password", 'placeholder -> "**********")
@helper.inputPassword(accountForm("confirmPassword"),'id -> "r_password", '_label -> "Confirm Password", 'placeholder -> "**********")
在accountForm
public String confirm() {
if (passwod!=confrimPassword) {
return "password did not match";
}
return null;
}//offcourse you can convert into scala