Класс домена Grails: уникальное ограничение для нескольких столбцов

Предположим, что простой класс домена Grails:

class Account {
    String countryId;

    String userName;

    String password;

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

Требуется, чтобы имена пользователей были уникальными для конкретной страны, поэтому в двух столбцах должно быть однозначное ограничение. Как это выразить в определении ограничений?

1 ответ

Решение
userName(unique: ['countryId'])

В массив можно включить столько же других свойств, которые составляют другие свойства, которые должны учитываться в "уникальном" ограничении имени пользователя.

Так, например, если вы хотели сделать userName уникальный в пределах countryId а также provinceId это будет выглядеть так:

userName(unique: ['countryId', 'provinceId']
Другие вопросы по тегам