web-dev-qa-db-fra.com

Classe de domaine Grails: contrainte unique pour plusieurs colonnes

Supposons une classe de domaine Grails simple:

class Account {
    String countryId;

    String userName;

    String password;

    static constraints = {
        ...???...
    }
}

Il est nécessaire que les noms d'utilisateur soient uniques pour un countryId, il doit donc y avoir un unique contraint sur deux colonnes. Comment exprimer cela dans le contraintes définition?

46
rainer198
userName(unique: ['countryId'])

Vous pouvez inclure autant d'autres propriétés dans le tableau qui constituent les autres propriétés qui doivent être prises en compte dans la contrainte "unique" du nom d'utilisateur.

Ainsi, par exemple, si vous vouliez rendre userName unique dans un countryId et provinceId, cela ressemblerait à ceci:

userName(unique: ['countryId', 'provinceId']
83
Joshua Moore