2012-08-25 105 views
1

我想添加一个约束来检查两个属性具有不同的值。Grails约束:属性值之间唯一

这里是我的情况:

class Game { 
    static belongsTo = [ Team ] 

    Team teamHome 
    Team teamAway 
} 

我试图做的是somenthig,如:

static constraints = { 
    teamHome(notEqual: teamAway) 
    teamAway(notEqual: teamHome) 
} 

我该如何解决这个问题?

回答

2

您可以使用validator constraint

static constraints = { 
    teamHome validator: { val, obj -> 
    val != obj.teamAway 
    } 
} 

val参数是teamHome值,obj是正在验证的对象,通过它可以访问teamAway属性。