3

圣杯 2.2.0

如何访问 Grails 域对象约束中的自定义配置变量。

我想要这样的东西:

    class User {

         def grailsApplication

         String name

         static constraints = {
             name size: grailsApplication.config.maxlength
         }  

    }

但它因“没有这样的属性:grailsApplication”而失败。我试图通过遵循在域对象中获取 grails 2.0.0M1 配置信息和静态范围的建议来使其工作?但还没有设法使任何组合起作用。

如何访问域对象约束中的配置?此外,如何在域约束的单元测试中处理这种情况?

4

1 回答 1

6

您可以使用grails.util.Holders该类来访问配置对象,如下所示:

Config.groovy

myMaxSize = 10

在您的域类中:

class User {
    String name

    static constraints = {
        name minSize: Holders.config.myMaxSize
    }
}
于 2013-12-09T19:42:41.170 回答