Django обрабатывает проблему по шаблону — {%, если object|length> 4%} повышает TemplateDoesNotExist: 500.html

У меня есть следующее в моем шаблоне.

{% block content %}
    {% for album in albumsList %}
        {% if fotosList %}
            <div class="photoalbum-wrapper">
                <h3>{{ album.title }}</h3>
                <ul class="photoalbum">
                    {% for foto in fotosList %}<li>item</li>{% endfor %}
                </ul>
                {% if fotosList|length > 4 %}
                    <a href="#" class="trigger">больше <span>&#9660;</span></a>
                {% endif %}
            </div>
        {% endif %}  
    {% endfor %}
{% endblock %}

И это повышает TemplateDoesNotExist: 500.html.

Если я пишу простой {{ fotoList|length }} это работает хорошо.

9
задан tataata 27 January 2010 в 20:56
поделиться

2 ответа

{%, если fotosList|length > 4%} не является допустимым тегом; в теге Django if нельзя использовать больше/менее операторов. (Вы можете использовать операторы в последнем релизе разработки, но я предполагаю, что вы не используете последнюю версию из SVN-репозитория Django. )

Причина, по которой вы получили ошибку TemplateDoesNotExist, заключается в том, что Django выбрасывает 500 ошибок внутреннего сервера (из-за неправильного тега), но вы не предоставили шаблон ошибки 500.html, как уже отмечалось здесь.

2
ответ дан 4 December 2019 в 09:36
поделиться

FYI if теги с операторами ==,! =, <,>, <=,> = Теперь поддерживаются в разработке. версия Django.

3
ответ дан 4 December 2019 в 09:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: