2009-11-24 57 views
4

我需要一種方法能夠讓一個領域類擁有許多自己的領域類。換句話說,有一個父母和孩子的關係。我正在處理的表中有數據,然後是一個名爲「parent_id」的列。如果任何項目設置了parent_id,則它是該元素的子項。Grails領域類與它自己的關係

Grails中有沒有什麼方法可以告訴hasMany哪個字段需要引用?

回答

6

這是您正在查找的示例(它是我正在運行的代碼段代碼,它會生成列parent_id)。我不認爲你需要的SortedSet:

class NavMenu implements Comparable { 
    String category 
    int rank = 0 

    String title 
    Boolean active = false 

    //NavMenu parent 
    SortedSet subItems 
    static hasMany = [subItems: NavMenu] 
    static belongsTo = [parent: NavMenu] 
    } 

此外,還可以使用Mapping DSL,這是在http://grails.org/GORM+-+Mapping+DSL

+3

解釋到的hasMany條款註明產品名稱,您應該添加約束條件: 靜態約束= {父(可空):} 否則,您將無法存儲根。 – 2009-11-24 11:31:05