Django Intermediary Models의 목적을 이해하려고합니다.Django의 중개 모델 이해
개념적으로 UML 클래스 다이어그램에서는 과 같습니다. 내가 알아야 할 두 가지 사이에 근본적인 차이점이 있습니까?
명백한 유사성에도 불구하고 중개 모델의 목적을 설명하는 몇 가지 리소스를 찾았지만 어느 누구도 "연관성 클래스"에 대한 언급을하지 않아 다소 의심 스럽습니다.
Django Intermediary Models의 목적을 이해하려고합니다.Django의 중개 모델 이해
개념적으로 UML 클래스 다이어그램에서는 과 같습니다. 내가 알아야 할 두 가지 사이에 근본적인 차이점이 있습니까?
명백한 유사성에도 불구하고 중개 모델의 목적을 설명하는 몇 가지 리소스를 찾았지만 어느 누구도 "연관성 클래스"에 대한 언급을하지 않아 다소 의심 스럽습니다.
당신은 장고 문헌에서 UML 다이어그램 어떤 비교를 찾을 가능성이 아니에요 - UML 모델링은 내 경험에서, 정말 파이썬 세계에서 큰 일이 아니다.
그러나 다이어그램을 보면 개념이 매우 비슷해 보입니다. ORM은 관계형 개념을 객체에 매핑한다는 것을 잊지 마십시오.이 경우, through 테이블은 항상 다 대다 관계로 생성 된 중개 테이블을 매핑합니다. 유일한 차이점은 링크의 등록 날짜와 같은 추가 정보를 해당 관계에 추가하려는 경우 수동으로 지정해야한다는 것입니다. 추가 필드가 필요하지 않은 경우 중개 모델을 지정할 필요는 없지만 테이블은 여전히 존재하며 M2M 관계의 각 끝에 대한 외래 키만 포함됩니다.
다 대 다 관계에 대한 추가 데이터를 저장하는 데 사용됩니다. 나는 이것이 신성 모독이라고 확신하지만, 가장 좋은 예는 환자와 의사 간의 연관성을 사용하는 Ruby on Rails guides에서 온 것이라고 생각합니다. 의사는 약속을 통해 많은 환자가 있습니다. 환자에게는 약속을 통해 많은 의사가 있습니다. 약속에는 날짜와 시간도 있기 때문에 직접적으로이 관계를 모델링 할 수는 없습니다.
저는 개념적으로 당신이 생각하기에, 그들은 UML의 연관 클래스와 비슷한 목적을 가지고 있다고 생각합니다.
이것은 관계형 데이터베이스에서 구현되는 many-to-many 관계입니다. 이것은 관계형 데이터베이스 디자인의 기본적인 부분입니다. 따라서 ORM을 올바르게 사용하기 위해서는 데이터베이스 작동 방식을 알아야하기 때문에 데이터베이스 디자인 원칙을 먼저 배우는 것이 좋습니다.
그래, 내가 본 대부분의 물건들은 UML이 파이썬 커뮤니티에서별로 사용되지 않는다는 것을 뒷받침 해준다. 고맙습니다. –