我的模型包含以下内容:
String username
在UserController.groovy
我有一个名为checkIfEmailExist
的方法。当用户键入电子邮件地址时,它会接收并检查该电子邮件是否可用。
def checkIfEmailExist() {
if(User.get(params.username)!=null && User.get(params.username).username==email){
println "FOUND EMAIL"
} else {
println "NOT FOUND EMAIL"
}
}
代码崩溃了。我认为
中存在错误 User.get(params.username)
答案 0 :(得分:3)
如果您只需要知道具有此电子邮件地址的用户是否存在,我就会这样做
if (User.countByUsername(params.username)) {
println "FOUND EMAIL"
} else {
println "NOT FOUND EMAIL"
}
或者,您可以使用User.findByUsername
,但效率较低,因为您不必要地返回User
个实例。
答案 1 :(得分:2)
get
用于按ID查找,如果要根据其他属性查找域对象,则需要findBy
动态查找器
def user = User.findByUsername(params.username)