TemplateSyntaxError无效的块标记:'else',预期'endif'

时间:2014-11-30 16:48:20

标签: django django-templates

我正在使用django教程进行探戈,一切进展顺利,直到我的一个模板中出现此问题。

它说它是期待和endif标签,但它找到了一个else标签,而我不明白,因为内部if / else / endif子句不会导致任何问题。

我看到有些人在使用自定义标签时遇到类似问题但是他们没有在脚本开头导入,但这些不是自定义标签,因此我不知道问题可能是什么。也许我错过了一个语法错误?

<body>
    {% if category_name %}
        <h1>{{ category_name }}</h1>
        {% if pages %}
            <ul>
                {% for page in pages %}
                    <li><a href="{{ page.url }}">{{ page.title }}</a></li>
                {% endfor %}
            </ul>
        {% else %}
            <strong>No pages currently in category.</strong>
        {% endif % }
    {% else %}                <= error here: "expected endif instead of else"
        The specified category {{ category_name }} does not exist!
    {% endif %}
</body>

我使用vim,shiftwidth = 3,tabstop = 3,expandtab。我不知道这可能与此有关,但以防万一。

1 个答案:

答案 0 :(得分:8)

你有一个小错字:你的一个陈述以{% endif % }而不是{% endif %}结束(删除空格)。