2011-01-09 2 views
0

제목에서 "메시징의 맥락에서 다 대 다 관계가 발생할 수있는 이유는 무엇입니까?" 나는 메시징 시스템과 그들이 실제로하는 것을 완전히 이해하고 있는지 확신 할 수 없다. 내 이해는 그들이 Y에서 메시지를 보내는 방법 일 뿐이며 그 반대의 경우도 마찬가지입니다."메시징의 맥락에서 다 대 다 관계가 발생할 수있는 이유는 무엇입니까?"

+2

더 이상의 문맥이 없으면이 질문은 다소 의미가 없습니다. –

답변

1

사람들은 발신자와 수신자가 될 수 있고 많은 사람들에게 보내고 많은 사람들로부터 수신 할 수 있기 때문에 사람들이 사용할 수 있습니다.

1

스 네일 메일 편지가 아닌 메시징에 대해 생각하십시오. RSS 피드 애그리 게이터와 같은 서비스에 대해 생각해보십시오.

이 서비스는 다양한 소스에서 다양한 메시지를 수집하여 다양한 대상에서 사용할 수 있도록 해줍니다.

1

메시지에 참여하는 모든 사람이 "연락처"라고 말합니다. 연락처에는 has_many 메시지가 있고 메시지는 belongs_to에 속합니다. 그러나, 메시지는 단지 하나의 접촉에 속하지 않습니다. 그것은 belongs_to to two - 발신자와 수신자입니다, 네?

테이블에 메시지를 저장하는 메커니즘을 상상해

id   (integer) 
sender  (reference to Contact) 
receiver (reference to Contact) 
message (text) 

당신은 기본적으로 연락처 및 연락 사이의 관계 테이블을 가지고있다. 그러나 이것은 자기 참조 관계입니다. 두 테이블을 연결하는 것이 아니라 자체 테이블을 연결하는 것입니다.

페이스 북에 친구를 추가 할 때마다 비슷한 개념이 소셜 네트워킹에서 발생합니다. 모두가 Facebook의 사용자이지만 모든 사람이 친구가 아닙니다. 대신, "사용자 A와 사용자 B는 친구입니다"라는 자체 참조 관계형 테이블이 있습니다.

관련 문제