Be careful with related_name and related_query_name
만약 우리가 ForeginKey 나 ManyToManyField 에 related_name 혹은 related_query_name 을 사용하고 있다면, 우리는 언제나 고유한 reverse name 과 query name 들을 해당 필드에 지정해 주어야 합니다.
이 related_name 과 related_query_name 부분에 대해서, 아주 심도있게 clarification 한 곳이 없으므로.
예시만 보고 지나갑니다.
common/models.py
1 | from django.db import models |
다른 앱도 같이 주어 집니다 rare/models.py
1 | from common.models import Base |
common.ChilA.m2m 필드의 역방향 이름은,
common_childa_related 이고,
역방향 쿼리 이름은, common_childas 가 될것입니다.
common.ChildB.m2m 필드의 역방향 이름은,
common_childb_related 이고,
역방향 쿼리 이름은, common_childbs 가 될것입니다.
마지막으로,
rare.childB.m2m 의 역방향 이름은, rare_childb_related 가 되고,
역방향 쿼리 이름은, rare_childbs 가 될것입니다.