gpt4 book ai didi

grails - 如何从非域类继承 GORM 映射?

转载 作者:行者123 更新时间:2023-12-02 14:17:20 26 4
gpt4 key购买 nike

永久地,我有一些表和一些带有映射注释的休眠类。这些类也有带有映射注释的抽象父类(super class)。但是在这个父类(super class)中没有表关联映射。所有表都在子类中标识。
我正在尝试将此映射迁移到 GORM 模型。但是所有策略: TablePerHierarchy 和 TablePerSubclass 不适用于我的情况,因为所有表都是创建的并且无法更改。
我在“src/groovy/somepackage/”中创建了父类(super class),并希望将此类的映射和约束继承到“域”文件夹中的子类。对于约束它工作得很好,但对于映射我找不到文档如何做到这一点。
有没有人有任何想法?

示例 .

在非域文件夹中:

absract class A {
String a
static mapping = {
a column: "column_A"
}
}

在域文件夹中:
class B extends A {
String b
static mapping = {
b column: "column_B"
}
}


class C extends A {
String c
static mapping = {
c column: "column_C"
}
}

需要得到两个表,每个表都有列“column_A”。

最佳答案

可以使用克隆和委托(delegate)功能。这是我所做的:

class B extends A {

static mapping = {
def copyMapping = A.mapping.clone()
copyMapping.delegate = delegate
copyMapping.call()
}
}

关于grails - 如何从非域类继承 GORM 映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16484723/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com