2012-11-14 2 views
1

templateetag의 결과를 반복 템플릿을 템플릿에로드하려면 어떻게해야합니까? 기본적으로 모델 객체에 태그를로드하고 (장고 ​​태그 지정 사용) 태그를 반복하여 해당 태그를 기반으로 관련 제품 목록을 작성하려고합니다. 그런 다음 제품 오브젝트를 반복하여 해당 제품에 대한 자세한 정보를 표시하고 싶습니다.템플릿에 사용할 템플릿 태그 변수를로드하는 중

예, 내 템플릿 태그 : relproducts 변수로 반환되도록

@register.simple_tag 
def get_rel_from_tag(tag_list): 
    try: 
     relproducts = UniPart.objects.filter(part__contains = partbase) 
    except: 
     print "no related products" 
     return None 
    else: 
     relproducts = UniPart.objects.filter(part__contains = partbase) 
     return relproducts 

가 어떻게 그것을해야합니까? 이것은 내가 템플릿에 호출하는 방법입니다

{% tags_for_object design as tag_list %} {% get_rel_from_tag tag_list %}

기본적으로

지금은 지금 relatedprod 반복하고 싶지만 작동하지 않습니다.

답변

1

의 결과를 캐시 '와'사용해보십시오 이 방법으로 컨텍스트 변수. 대신 assignment_tag을 사용해보세요.

0

당신이 {% load 'your_file_name %}

업데이트를 사용하여 템플릿 태그 파일을로드나요 다음 simple_tag 도우미 당신이 그 결과를 할당 할 수 없습니다 tags_for_object_design

{% with tag_list=tags_for_object design %} 
+0

예 잘 작동하고'tag_list'를 적절하게 반환 한'tags_for_object' 템플릿 태그와 같은 파일에 있습니다. – user1328021