2011-04-26 4 views
1

매우 혼란 스럽습니다. 32 개의 항목이있는 변수가 있고 for 루프를 수행하려고하지만 "렌더링 중 IndexError 오류가 발생했습니다 : 문자열 인덱스가 범위를 벗어났습니다"장고 문자열 색인이 범위를 벗어났습니다.

아이디어가 있습니까? 변수가 반드시 비어 있지 않습니다.

{% if photos %} 
    <ul class="photo-grid"> 
     {% for photo in photos %} 
       <li> 
         <img src="{{ photo.images.low_resolution.url }}" /> 
       </li> 
     {% endfor %} 
    </ul> 
{% else %} 
    No photos found. 
{% endif %} 
+1

다른 곳에서 오류가 발생했을 수 있습니다. 'photo.images.low_resolution.url'을 해결하는 코드를 찾으십니까? –

+1

당신의 오류가 귀하의 views.py에서 발생하지 않았습니까? 내가 아는 바로는 기본적으로 템플릿의 변수 오류가 자동으로 실패합니다. – goh

+1

추적 - 무언가의 색인을 취하고 있습니다 : D. 편집 : 와우, 파이썬 태그의 힘. –

답변

3

나는이 문제가 photo.images 값의 일부일 수 있다고 생각합니다. images이 사진 객체의 배열 또는 컬렉션입니까? 배열 인 경우 images.low_resolution은 배열의 이미지에 low_resolution의 색인 값으로 액세스하려합니다.이 값은 아마도 원하는 것이 아닙니다 (또는 아마도 ???). photo.images에 루프를 연결하기 위해 일부 논리를 추가해야 할 수도 있습니다.

기타 정보는 How to access array elements in a Django template?

+0

많은 도움이되었습니다. 고마워요 !!! – Brenden

관련 문제