나는 mongo DB와 상호 작용하는 Grails 프로젝트를 가지고있다. 중첩 데이터를 나타내는 도메인 클래스를 만드는 것이 가장 좋은 방법인지 알고 싶습니다. 예를 들어Grails와 mongo DB 중첩 데이터 구조
데이터 :
settings:{
user:{id:1234 , name:"john"}
colors:{header:"red" , footer:"white"}
}
어떤 도움 예제 코드
나는 mongo DB와 상호 작용하는 Grails 프로젝트를 가지고있다. 중첩 데이터를 나타내는 도메인 클래스를 만드는 것이 가장 좋은 방법인지 알고 싶습니다. 예를 들어Grails와 mongo DB 중첩 데이터 구조
데이터 :
settings:{
user:{id:1234 , name:"john"}
colors:{header:"red" , footer:"white"}
}
어떤 도움 예제 코드
나는 당신이 MongoDB의 플러그인을 사용하고 있는지 추정하는 합리적인 생각을 부탁드립니다.
하는 것은 간단 넣으려면 :
Class Settings {
int user_id
String user_name
String colors_header
String colors_footer
}
을 기존 MongoDB를 수집 당신이 선물처럼이있는 경우 :
Class User {
int id
String name
}
Class Color {
String header
String footer
}
Class Settings{
User user
Colors colors
static embedded = ['user','colors']
}
MongoDB를이 완전히 당신이 고정 된 수에 국한되지 않습니다 의미 스키마 때문에 관계형 데이터베이스와 같은 열. 따라서 중첩 데이터를 만드는 것이 매우 쉽습니다. 답장을
//the domain class
class Settings {
Map user
Map colors
}
//in the groovy controller
def s = new Settings(user: [name:"jhon"],colors:[header:"red" ,footer:"white"])
s.save(flush: true)
감사합니다, 나는 플러그인을 사용하고 있습니다 : 여기
은 예입니다. 좀 혼란 스럽네요. 첫 번째 예제를 사용하면 질의를받을 때 중첩 계층이 어떻게 보존됩니까? 코드 예제를 줄 수 있습니까? –첫 번째 정의는 중첩되지 않고 단순화되고 평평한 구조입니다. 중첩 된 데이터를 원하면 두 번째 데이터를 가져와 기존 데이터 구조와 일치시킵니다. – coderLMN