2009-11-24 12 views
4

도메인 클래스를 자체적으로 가질 수있는 방법이 필요합니다. 즉, 부모와 자녀 관계가 있습니다. 내가 작업하고있는 테이블에는 데이터가 있고 "parent_id"라는 열이 있습니다. parent_id가 설정된 항목이 있으면 해당 요소의 하위 항목입니다.Grails 도메인 클래스 자체에 대한 관계

Grails에서 hasMany에게 어떤 필드를 참조 할 것인지 알려주는 방법이 있습니까?

답변

6

이것은 찾고있는 코드 예입니다 (실행중인 스 니펫 코드이며 parent_id 열을 생성합니다). 당신은 제약 조건을 추가해야합니다 또한

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] 
    } 

, 당신은 http://grails.org/GORM+-+Mapping+DSL

+3

에서 설명 매핑 DSL을 사용하여 hasMany의 절에 이름을 지정할 수 있습니다 : 정적 제약 = {나는 당신이 SortedSet의 필요 생각하지 않는다 parent (nullable : true)} 그렇지 않으면 루트를 저장할 수 없습니다. –

관련 문제