2017-09-14 2 views
2

나는 Profile.objects.all()에 의해 생성 된 queryset 있습니다. 그 행 중 하나만 제외하고 템플릿에서 인쇄하고 싶습니다. 템플릿으로 어떻게 할 수 있습니까? 또는 템플릿에서 가능하지 않은 경우 어떻게해야 볼 수 있습니까?django에서 다른 객체에서 객체를 제거하는 방법은 무엇입니까? - 파이썬

+1

'Profile.objects.all는()'그것은'queryset'의 객체가 아닙니다. 좀 더 구체적으로 문제/문제를 구체적으로 설명해 주시겠습니까? – zaidfazil

+0

맞아, 네가 맞다. 나는 그 중 하나를 제외한 모든 행을 인쇄하고 싶다. 예를 들어 데이터베이스 테이블에 5 개의 행이 있다면, 나는'Profile.objects.all()'에 의해 그것들을 모두 가져 오지만 1에서 4까지의 행을 인쇄하고 5 행을 인쇄하지 않을 것입니다. – msln

+0

Profile .objects.all(). exclude (...) –

답변

0

이 같은, 수 :

YourObjet = Profile.objects.exclude(**kwargs) 

이 장고 쿼리의 모든 개체를 반환합니다 제외 된 개체가없는 모델 .exclude()

예 :

MyObject = Individu.objects.all() 

반환 :

<QuerySet [<Individu: 1 19312STRASBOURG-402541 JUNGBLUTH Valentin>, <Individu: 2 18812STRASBOURG-797846 ARNOUD Laurent>, <Individu: 3 None TEST Test>, '...(remaining elements truncated)...']>

MyObject = Individu.objects.exclude(id="2") 
,369

당신이 장고 문서를 가지고

반환 :

<QuerySet [<Individu: 1 19312STRASBOURG-402541 JUNGBLUTH Valentin>, <Individu: 3 None TEST Test>, '...(remaining elements truncated)...']>

+0

템플릿에서이 작업을 수행 할 수 없습니까? – msln

+0

보기에서 컨텍스트 사전에'YourObject'를 추가해야합니다. 템플릿에서'YourObject' 변수를 호출하면 작동합니다. – Deadpool

+0

예제를 추가했습니다;) – Deadpool

1

우선 Profile.objects.all()QuerySet입니다. QuerySet에있는 각 인스턴스의 __str__() 메소드를 반복하여 인쇄 할 수 있습니다.

당신이 마지막 하나를 소홀히 할 경우

, 당신은 당신이 같은 .exclude()의 검색어를 사용할 수

{% for item in profiles %} 

    {% if not forloop.last %} 

     {{ item }} 

    {% endif %} 

{% endfor %} 
+1

더 나은 대답은 아닙니다. 왜냐하면 그것은 마지막 객체에 대해 작동하지만 1.000.000 객체를 가진 ID = 10의 객체에는 작동하지 않기 때문입니다. '.exclude()'를 써야만한다. – Deadpool

+0

표시하고 싶지 않은 몇 가지 공통 조건을 가진 객체가 여러 개있는 경우에는 참입니다. – zaidfazil