2016-09-14 135 views
0

在我的Grails应用程序3.1.11我有一个域类自定义验证失败

class Ability { 

    String valueTypeName 

    static constraints = { 
    valueTypeName validator:{ val, obj, errors -> 
     println val 
     errors.rejectValue 'valueTypeName', 'err' 
     return 'default.invalid.validator.message' 
    } 
    } 
} 

和脚手架控制器&观点:

class AbilityController { 
    static scaffold = Ability 
} 

保存时/更新,我可以看到的println输出控制台,但该对象从未被拒绝......我试图返回false,但它仍然是一样的。 明确拒绝该值有助于通过插入。

我缺少什么?

+0

你为什么要调用'rejectValue'? –

+0

我想确保没有任何工作。 – injecteer

回答

1

这是脚手架中的一个错误。请参阅https://github.com/grails3-plugins/scaffolding/issues/24

请注意,验证不会失败。验证工作。更新确实没有发送到数据库。问题是脚手架显示一个观点,表明更新已经完成,但事实并非如此。

+0

所以,你的意思是,如果我做'grails generate-all Ability',它应该没问题? – injecteer

+0

我相信这是正确的。我不认为生成的控制器具有与动态控制器相同的错误。 –

相关问题