0

圣杯 2.1.1

我似乎无法获得要注入服务的命令对象,以便我可以使用自定义验证器。我已经尝试了几件事,包括 Grails 命令对象数据绑定和自定义验证器上的 2.1.1 文档所建议的内容,我只是想不通这个..

相关代码:

class RegistrationCommand {

    String username

    def registrationService
    static constraints = {

        username validator: { val, obj ->
            obj.registrationService.isUsernameUnique(val) }
    }
}

class RegistrationService {

    def isUsernameUnique(username){
        def user = new User(username:username)
        user.validate()
        if(user.errors.hasFieldErrors("username")){
            return false
        }else{
            return true
        }
    }
4

1 回答 1

2

已解决..问题是由于插件。 我正在使用一个插件进行客户端 jquery 验证(jquery-validation-ui-1.4.2)。插件控制器创建的命令对象没有被注入服务。报告了该问题https://github.com/limcheekin/jquery-validation-ui/issues/17。该修复确实有效,但尚未推送到上游。

于 2013-03-14T22:04:49.003 回答