【问题标题】:Modify gorm mapping before loading domain在加载域之前修改gorm映射
【发布时间】:2013-08-30 06:19:38
【问题描述】:

我们的 grails 项目中有两个数据源(主数据源和从数据源),我们希望在这两个数据源上都有我们所有的域类。所以我们尝试通过添加以下代码来动态配置静态映射闭包:

datasources(['DEFAULT', 'readonly'])

假设我们有这个域类:

class Book {
    String name

    static mapping = {
        sort 'name'
    }
}

我想将代码动态添加到现有的静态映射闭包中,结果将是:

class Book {
    String name

    static mapping = {
        sort 'name'
        datasources(['DEFAULT', 'readonly'])
    }
}

我知道我可以使用数据源“ALL”,但我真正想知道的是如何将代码添加到所有域类中的每个现有静态映射中。

那些有自己的表格的插件呢?我需要将数据源“ALL”设置为默认配置或动态注入代码。

【问题讨论】:

    标签: hibernate grails metaprogramming grails-orm


    【解决方案1】:

    我们希望在两个数据源上都有我们所有的域类

    The documentation 描述了如何做到这一点。

    如果域类使用所有已配置的数据源,请使用特殊的 值“全部”:

    class ZipCode {
       String code
    
       static mapping = {
          datasource 'ALL'
       }
    }
    

    【讨论】:

    • 我知道,但不想在所有域类(超过 100 个)上重复此代码。只是好奇如何修改现有的闭包。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 2018-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多