내 데이터 모델은 세 가지 주요 항목으로 구성 나는 많은 사용자가 목적지를 모든 소스를 결합하는 검색어 세트를 (만들려고하고대다 장고에서 "대리"relathionship
class User(models.Model):
...
class Source(models.Model):
user = models.ForeignKey(User, related_name='iuser')
country = models.ForeignKey(Country, on_delete=models.DO_NOTHING)
description = models.CharField(max_length=100)
class Destination(models.Model):
user = models.ForeignKey(User, related_name='wuser')
country = models.ForeignKey(Country)
을 많은). 그런 식으로 모든 사용자에 대해 가능한 모든 소스/대상 조합이 포함 된 테이블을 갖게됩니다. SQL에서는 세 테이블을 조인하고 각 테이블에서 적절한 정보를 선택합니다.
내 질문에 쿼리를 수행하는 방법입니까? 쿼리 데이터에 액세스하는 방법?
고마워요! 그것은 트릭을합니다. 나는 _values_ function을 완전히 간과했다. 그러나 _values_는 결과에 빈 요소를 추가하는 왼쪽 외부 조인을 생성합니다. 그것들을 필터링하는 것은 쿼리를 더욱 복잡하게 만듭니다. 장고가 내부 결합만으로 같은 일을 할 수 있습니까? – Xyand
'select_related()'를 사용하면 foreignkeys가'null '이 아님을 확인합니다 – Pannu
'select_related()'는 어떤 객체를 사용해야합니까? – Xyand