多个数据源与grails中的关联

时间:2015-06-18 06:57:07

标签: grails associations datasource

在我目前的项目中,我需要使用2个数据库,一个用于主数据,另一个用于客户端数据。截至目前,我们正在使用单个数据库但我们计划将其拆分为2个数据库(主数据库和客户端数据库) 。

我们在域类级别上有客户端和主数据库之间的关联。我尝试过grails 2.X多数据源选项,但无法进行关联。如果有人在这个场景中工作,那么建议我采用最好的方法。

我们倾向于为所有客户端实例使用单个主数据库。

1 个答案:

答案 0 :(得分:0)

我的解决方案基于answer

class ClassB {
    Long classAId

    static constraints = {
        classAId nullable: true
    }

    static mapping = {
        datasource 'other'
    }

    static transients = ['classA']

    ClassA getClassA(){
        classAId ? ClassA.get(classAId) : null
    }

    ClassB(classAId){
        def test = ClassA.get(classAId)
        classAId = test ? test.id : null
    }
}

也许它不漂亮,但它正在发挥作用。