视频连接:http://www.ilovexuexi.com/Grails/k45(视频链接来自ilove学习网)
以用户名是否存在为例:(修改UserController.groovy中的save,添加一个分支else if)
if(findByName(params.name)){
flash.message="此用户一杯使用,请换用其他用户"
redirect(action:"create")
}
完整的save代码如下:
def save(User userInstance) {/*if(params.password!=params.password2){
flash.message="密码前后输入不一致,请重新输入!"
redirect(action:"create")
}
else if(User.findByName(params.name)){
flash.message="该用户已经存在,请使用其他用户"
redirect(action:"create")
}
else{
def u=new User(params)
u.save()
render "用户创建成功!"
}*/
if (userInstance == null) {
notFound()
return
}else if(params.password!=params.password2){
flash.message="密码前后输入不一致,请重新输入!"
redirect(action:"create")
}
else if(User.findByName(params.name)){
flash.message="该用户已经存在,请使用其他用户"
redirect(action:"create")
}
else{
def u=new User(params)
u.save()
render "用户创建成功!"
}//关键代码
/*if (userInstance.hasErrors()) {
respond userInstance.errors, view:'create'
return
}
userInstance.save flush:true
request.withFormat {
form {
flash.message = message(code: 'default.created.message', args: [message(code: 'userInstance.label', default: 'User'), userInstance.id])
redirect userInstance
}
'*' { respond userInstance, [status: CREATED] }
}*/
}
密码转换成非明文显示代码如下:
<input type="password" name="password" value="${userInstance?.password}"/>