我有一个域类:

class Book { 
 
    String id  
    Date dateCreated 
    Date lastUpdated 
    String title 
    boolean acceptPolicy // defines if the user accepts the terms and privacy poicy 
    String uploadImageId 
 
    static transients = [ "acceptPolicy" ]   
 
    static constraints = { 
            acceptPolicy( validator: { val, obj -> val == true} ) 
    } 
 
} 

我选择“acceptPolicy”作为不应存储在数据库中的字段。当我创建一个书本对象时,所有东西都能找到。当我更新书籍实例时,会出现问题。每次尝试保存时,都会收到“acceptPolicy”的验证错误。情况并非如此,因为“acceptPolicy”未存储在数据库中。我也尝试设定
acceptPolicy = true  

在隐藏的输入字段中,但仍然会出现此问题。我该如何解决?

请您参考如下方法:

更改验证器,使其生效,以便仅在实体尚未持久时才验证acceptPolicy字段:

 acceptPolicy( validator: { val, obj -> obj.id || val } ) 


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!