GenericForeignKey를 처음 사용하고 쿼리 문에서 작동하지 못했습니다. 테이블은 대략 다음과 같다 : 스캔 한 문제를 만들어django : 어떻게 GenericForeignKey의 필드를 기반으로 쿼리합니까?
class Ticket(models.Model):
issue_ct = models.ForeignKey(ContentType, related_name='issue_content_type')
issue_id = models.PositiveIntegerField(null=True, blank=True)
issue = generic.GenericForeignKey('issue_ct', 'issue_id')
class Issue(models.Model):
scan = models.ForeignKey(Scan)
, 문제는 일부 티켓을 생성하고, 내가 티켓 테이블에 외래 키로 문제를했다. 이제 Scan 개체가 있는데이 스캔과 관련된 모든 티켓을 쿼리하려고합니다. 나는 이것을 먼저 시도했다 :
tickets = Tickets.objects.filter(issue__scan=scan_obj)
이것은 작동하지 않는다. 그럼 난 시도 :
issue = Issue.objects.get(scan=scan_obj)
content_type = ContentType.objects.get_for_model(Issue)
tickets = Tickets.objects.filter(content_type=content_type, issue=issue)
여전히 작동하지 않습니다. 장고에서 이러한 종류의 쿼리를 수행하는 방법을 알아야합니까? 감사.
내 날, 내 친구, 나는 이것을 알아 내려고 기본적으로 털이 없습니다. 감사 :) . –
@ girasquid issue_id는 질문의 문제 필드 또는 문제 필드의 id 속성을 참조 할 수 있으므로 매우 혼란 스럽습니다.이를 구분할 수 있습니까? – rohanagarwal