我有一个从旧表逆向工程的域类
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:"Row 插入 Class1", className:"com.test.Class1", eventName:"INSERT"]。
AuditEvent[name:"从 Class1 中删除的行", className:"com.test.Class1", eventName:"DELETE"]
我现在想要的是能够打电话AuditLog.get(1).event.name
,这就是我卡住的地方。
如何描述event
AuditLog 类中字段的关系以使其根据 AuditLog.className 和 AuditLog.eventName 加载正确的 AuditEvent 对象?