如何通过Grails中的Config.groovy条目定义自定义表映射

时间:2014-11-19 12:15:37

标签: grails gorm grails-plugin grails-domain-class

我正在开发一个需要在表映射中使用特定索引配置的插件。

static mapping = {
    myProperty index:'myProperty_Idx'
}

是否允许插件用户通过Config.groovy文件决定是否要使用此映射?

1 个答案:

答案 0 :(得分:0)

我相信您可以直接从映射块中读取配置变量。

所以应用程序中的这一行消耗了你的插件的Config.groovy

grails.myplugin.useIndexForFoo = true

应该允许您拥有可配置的域类,例如

class Foo
{
    String myString

    static mapping = {
        if (Holders.config?.grails?.myplugin?.useIndexForFoo)
            myString index: "myString_idx"
    }
}

注意我使用了Holders而不是注入grailsApplication bean,因为映射配置是静态的 - 不知道这是否是最佳的