그래서, 장고에서이 응용 프로그램을 제작하고이 코드를 사용하고 있습니다 :장고 : 모델 쿼리 추출물은 템플릿에 반복하지
video_select.py 파일 내 템플릿 태그 :
@register.assignment_tag
def content_list():
contentlist = vvideo.objects.all()
return contentlist
내 템플릿 :
{% load video_select %}
<article id="menu" style="height:80%;">
<h2 class="major">Menu</h2>
<div>
{% for contentt in content_list %} {{ contentt.video_path }} {% endfor %}
</div>
<h2 class="major">End Menu</h2>
</article>
아무 것도 표시하지 않습니다. 하지만 왜 그런지 모르겠습니다.
는 반대로, 단순히 밖으로 인쇄 {%의 CONTENT_LIST의 %}는이 출력을 인쇄 않습니다[<vvideo: vvideo object>, <vvideo: vvideo object>, <vvideo: vvideo object>, <vvideo: vvideo object>, <vvideo: vvideo object>, <vvideo: vvideo object>]
그래서 명확하게 템플릿 태그가 노력하고 있습니다. 내 models.py에 포함 된 내용 :
class vvideo(models.Model):
video_path = models.CharField(max_length=200, blank=True, null=True)
이렇게 분명히 .video_path 참조도 정확합니다.
왜 내 목록이 반복되지 않는지 이해할 수 있습니까? & 인쇄 하시겠습니까? 템플릿 태그에서 직접 iterating 시도하고 작동하고 있습니다. 그러나 각 비디오에 대해 href 링크를 만들려고하기 때문에 템플릿 자체에서 루프를 실행하고 싶습니다. 따라서 데이터베이스의 모든 동영상을 반복 재생하고 이름과 URL을 추출하여 각각의 링크를 만들어야합니다. 각 라인 출력에 필요한 항목은 두 가지입니다. 그러므로 템플릿 목록에 객체 목록을 보내고 URL과 동영상의 이름을 반복하여 추출하는 것이 좋습니다.
모든 video_path 값이 비어있을 가능성이 있습니까? 나는 {{contentt.id}}을 (를) 시험해보고 아무것도 얻을 수 있는지 알아보기로했습니다. –