如何在grails约束中设置一个固定长度的String?

use*_*274 3 grails

我有这个域类

class Client {
  String idCard
  ...

  static constraints = {
    idCard size:16
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)

我在bootstrap.groovy文件中创建了一些测试数据

但我收到以下错误消息

Caused by IllegalArgumentException: Parameter for constraint [size] of property [idCard] of class [class ni.sb.Client] must be a of type [groovy.lang.IntRange]
Run Code Online (Sandbox Code Playgroud)

我需要这个属性是一个字符串,并具有固定的长度

我遵循大小限制文档但没有成功

谢谢你的时间

saw*_*303 9

您可以使用

static constraints = {
    idCard maxSize:16, minSize: 16 // or simply use size: 16..16
    ...
}
Run Code Online (Sandbox Code Playgroud)

这适用于字符串并将影响模式生成VARCHAR(16)(例如对于MySQL)