2017-10-18 2 views
0

을 선택하지 않습니다 당신이 그들이 InvoiceNumbers 모델 "related_name"정의와 관련이 볼 수 있듯이장고 쿼리는 내가 장고에 다음과 같은 모델을 가지고 할 related_name

class UserPayments(models.Model): 

    _DATABASE = "payments" 

    id = models.AutoField(primary_key=True) 
    paym_psp_id = models.ForeignKey(ConfigPSP, null=True, on_delete=models.SET_NULL) 
    [...] 

class InvoiceNumbers(models.Model): 
    _DATABASE = "payments" 

    id = models.AutoField(primary_key=True) 
    inv_date = models.DateField(null=False) 
    inv_payment_id = models.ForeignKey(UserPayments, null=True, on_delete=models.DO_NOTHING, related_name='paym_invoice_meta') 
    [...] 

. 내가 더 좋아 장고에서 쿼리 할 때

는 : 템플릿

{% for inv in payments %} 
     {% for meta in inv.paym_invoice_meta %} 
      {{ meta.inv_invoice_hash }} 
     {% endfor %} 
{% endfor %} 

이 쿼리를 통해

payments = UserPayments.objects.filter(paym_user_id=user_id) 

그리고 반복을 나는 pay_invoice_meta이 반복 가능한 아니라고 템플릿 오류가 발생하지 않습니다. 왼쪽 외부 조인을 포함한 수동 select 문으로 모든 결과를 얻습니다.

무엇이 여기에 있습니까? InvoiceNumbers에서 값을 선택하도록 쿼리를 강제로 설정할 수 있습니까?

+0

그것 뿐이다 –

답변

0

전화 관련 개체의 all 방법은 검색어 세트를 반환 :

{% for inv in payments %} 
    {% for meta in inv.paym_invoice_meta.all %} 
     {{ meta.inv_invoice_hash }} 
    {% endfor %} 
{% endfor %} 
+0

{inv.paym_invoice_meta.all %의 메타에 대한 %} 를 교체합니다. 고마워요! 검색에 많은 시간을 낭비했습니다. – FreddyFFM

관련 문제