¿Cómo establecer la unicidad a nivel de base de datos para una asociación de uno a muchos?

Mi problema es simple pero no pude encontrar ninguna sintaxis GORM para esto.

Considere la siguiente clase:

class Article {
  String text

  static hasMany = [tags: String]

  static constraints= {
    tags(unique: true) //NOT WORKING
  }

}

quiero tenerun nombre de etiqueta único por artículo definido en mis restricciones pero no puedo hacerlo con la sintaxis anterior. Claramente necesito en el esquema DB algo como:

create table article_tags (article_id bigint, tags_string varchar(255), unique (article_id , tags_string))

¿Cómo puedo hacer eso?

PD: también estoy atascado para establecer restricciones en el tamaño mínimo y máximo de la etiqueta

Respuestas a la pregunta(5)

Su respuesta a la pregunta