我正在使用Lift框架和Scala。我有一個表單來註冊我的應用程序,我想驗證其中的所有字段。我有一個片段,我可以訪問我的表單值,還有一個驗證類,我寫了我的驗證函數。下面的代碼是我到目前爲止嘗試過的。在我的摘錄:電梯框架工作scala中的字段驗證
if(validationClassObject.validateName(first_name)){
if(validationClassObject.validateName(last_name)){
if(validationClassObject.validateEmail(email)){
if(validationClassObject.validateUserName(name)){
// Adding values to the DB
S.redirectTo("/")
}
else{
S.notice("Invalid User Name")
}
}
else{
S.notice("Invalid Mail Id")
}
}
else{
S.notice("Invalid Last name")
}
}
else{
S.notice("Invalid First Name")
}
在validationClass
我寫的驗證碼的樣子:
//function for validating mail address
def validateEmail(email: String): Boolean =
"""(\w+)@([\w\.]+)""".r.unapplySeq(email).isDefined
//code for validating remaining fileds like above
這是工作,但我知道這是不是在斯卡拉編碼此操作的最佳方式。我怎樣才能以更具擴展性的方式修改我的代碼?我如何在這裏使用案例課程?
能否請你解釋一下爲什麼我們必須在這裏使用def'av [T,V]'和'v [V]'。並且我也無法理解'v()'函數調用部分,因爲我沒有將第二個參數'(f:=> V)'傳遞給它。你可以解釋一下嗎? thanx @axaluss。 – isc
增加了一些解釋。 – axaluss
謝謝@axaluss。它正在完美工作 – isc