2011-05-13 2 views
2

저는 MongoDB를 처음 접하고 MongoMapper와 함께 도움을 받았습니다.MongoDB와의 우호 관계

나는 매우 흥미로운데, 나는 약간의 사용자 < -> 친구 관계를 확립하려고 노력하고 있으며, 나는 Document와 EmbeddedDocument의 차이점에 대해 약간 혼란 스럽다.

사용자가 문서라고 생각하지만 친구가 User 또는 문서의 EmbeddedDocument가되어 사용자가 단순히 전화를 걸었을 때 (많은 : 친구)?

예비 설계에서 친구 목록은 사용자를 통해서만 액세스 할 수 있습니다.

감사합니다.

답변

1

MongoDB에 관해서는 상당히 묻는 기본 "포함/참조"질문을하고 있습니다. 대답은 항상 명확하지 않습니다.

a similar question에 대한 광범위한 답장이 있습니다. 다음은 공식 MongoDB 문서입니다 (this question). 일반 규칙

하나는 : 최고 수준에

"일등"개체는 일반적으로 자신의 컬렉션이 있습니다.

귀하의 경우 친구는 아마 자체의 사용자 개체입니다. 당신은 아마 전체 친구를 사용자 내부에 포함시키고 싶지 않을 것입니다. 대신 친구 목록을 각 사용자 내부의 배열로 유지하려고합니다. (그래서 아마 참조)

+1

와우, 그 첫 번째 링크 정말, 정말 도움이되었다! 얼마나 상세한 대답입니까! 고마워요! 오, 그렇습니다. 똑같은 일을 끝내게되었습니다. 나는 this = many : friends라고 선언했다 : in :> : friends_ids, : class_name => 'User' –