0
我們有兩個領域類像下面的Grails GORM協會不同FK在複合類
package com.x.y.z;
Class A {
String name
String status
String specialID
static mapping = {
id type:Long, sqlType:'INT'
}
}
package com.x.y.z;
Class B {
A a
String name
}
現在,當我們把我們的服務器和數據表中的彈性開始被編入索引上的bulkload我們得到錯誤
通過ObjectNotFoundException引起:沒有排與所述給定的標識符存在:[com.xyzA#300]
消息:無法馬歇爾域實例[com.xyzB:675]
可能發生的情況是編組B時,對象在A.id中搜索FK時,實際上應該查看A.specialID。我能夠在數據庫中查找一個specialID 300,而表A的ID沒有300.我們希望B的實例查找A.specialID而不是默認的A.id。這可能嗎?我們沒有使用hasOne映射,因爲在這種情況下雙向映射不合適。感謝任何關於繪圖的幫助。
A的PK ID是id(自動遞增),它是基於String的專用ID的獨立字段 – Noosphere
那麼,不,你不能有一個域類B查找A.specialID而不是缺省的A.id,因爲GORM查詢只能通過其域類關聯來連接表:主鍵到外鍵。 –