Ошибка тегов Django. Недопустимый тег блока: 'endfor' - PullRequest
2 голосов
/ 21 октября 2010

В чем проблема? Это говорит мне, что недопустимый тег блока: 'endfor'.

{%else%}

<ol id="sortable" name="plst{{first_list.pk}}">
{% for item in playlist %}
<li id="item{{item.pk}}" media="{{item.media.pk}}" class="holderPlace"  title="{{item.media.name}}"><span> {{item.media.name|custom_slice:30}} </span>

             {%ifequal item.media.watch_status 0 %}
                <img src="{{MEDIA_URL}}images/content_started_watch_12x12.gif" title="ddd" alt="" height="12" width="12" style="position:relative;top:2px;"/>
            {%else%}
                {%ifequal item.media.watch_status 1 %}
                <img src="{{MEDIA_URL}}images/content_watched_12x12.gif" title="Вы уже смотрели эту передачу" alt="" height="12" width="12" style="position:relative;top:2px;"/>
            {%endifequal%}


<div class="buttons">  <a href="javascript:void(0);" class="myButtonPlay" title="Начать просмотр"><img class="button_play" src="{{MEDIA_URL}}images/playlist/btn_play.gif" width="80" height="28" /></a><span>{{item.media.duration}} мин.</span> <a href="javascript:void(0);" class="deleteButton" title="Удалить из плейлиста"><img src="{{MEDIA_URL}}images/playlist/btn_delete.gif" width="29" height="22" /></a> <a href="javascript:void(0);" class="myButtonDown" title="Переместить вниз"><img src="{{MEDIA_URL}}images/playlist/btn_down.gif" width="29" height="22" /></a> <a href="javascript:void(0);" class="myButtonUp" title="Переместить вверх"><img src="{{MEDIA_URL}}images/playlist/btn_up.gif" width="29" height="22" /></a></div>
</li>
{% endfor %}
</ol>
{%endif%}

1 Ответ

4 голосов
/ 21 октября 2010

Проверьте эти ifequal теги.

{%ifequal item.media.watch_status 0 %} 
    <img src="{{MEDIA_URL}}images/content_started_watch_12x12.gif" title="ddd" alt="" height="12" width="12" style="position:relative;top:2px;"/> 
{%else%} 
    {%ifequal item.media.watch_status 1 %} 
        <img src="{{MEDIA_URL}}images/content_watched_12x12.gif" title="Вы уже смотрели эту передачу" alt="" height="12" width="12" style="position:relative;top:2px;"/> 
    {%endifequal%}
{%endifequal%}

Я думаю, это то, что вы пытаетесь сделать, но не уверены.

Объяснение: Когда Django анализирует тег for, он просто ищет тег с именем endfor - на самом деле это не настоящий тег (если это имеет смысл).Как только тег ifequal обнаружен, он выполняет синтаксический анализ, пока не получит свой endifequal (который на самом деле тоже не является реальным тегом).Поскольку в этом случае внешний ifequal никогда не находил совпадающий endifequal, когда он обнаружил, что endfor, он не знает, что с этим делать, поскольку это не настоящий тег, отсюда, казалось бы, странное сообщение о том, что произошло.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...