【发布时间】:2013-03-06 08:52:57
【问题描述】:
我有一个从旧表逆向工程的域类
class AuditLog {
String className;
String eventName;
...
AuditEvent event; //need to add this one
static mapping = {
...
className column: 'class_name';
eventName column: 'event_name';
...
}
}
className 包含已更改的域类的名称(例如 com.test.Class1),eventName 包含已执行事件的名称(例如 INSERT/UPDATE/DELETE)。
我需要对所发生的事情提供人类可读的描述。所以我创建了另一个域类
class AuditEvent {
String name;
//these should make a composite key
String className;
String eventName;
}
例如AuditEvent[name:"行插入 Class1", className:"com.test.Class1", eventName:"INSERT"].
AuditEvent[name:"从 Class1 中删除的行", className:"com.test.Class1", eventName:"DELETE"]
我现在想要的是能够打电话给AuditLog.get(1).event.name,这就是我卡住的地方。
如何描述 AuditLog 类中 event 字段的关系,使其根据 AuditLog.className 和 AuditLog.eventName 加载正确的 AuditEvent 对象?
【问题讨论】:
标签: hibernate grails grails-orm