0

我在使用 django.contrib.auth.view.login 视图时遇到 Django MPTT 问题,

在 urls.py 中有

  (r'^accounts/login/$', django.contrib.auth.view.login),

我的模板注册/login.html 扩展了基本模板-login.html:

{% extends "base.html" %}

现在,我在 base.html 中使用 MPTT,如下所示:

{% load mptt_tags %}    
            <ul>
           {% recursetree nodes %}
            <li>
                <a href="{% url someview node.id %}">{{ node.name }}</a>
                {% if not node.is_leaf_node %}
                    <ul>
                        {{ children }}
                    </ul>
                {% endif %}
            </li>
        {% endrecursetree %}

但是,当我访问帐户/登录时,django 抱怨:

TemplateSyntaxError at /accounts/login/

Caught VariableDoesNotExist while rendering: Failed lookup for key [nodes] in u"[{}

Template error

In template /home/user/djcode/project/templates/base.html, error at line 58

而在第 58 行实际上是这段代码 {% recursetree nodes %}

我不知道如何解决这个问题。我的其他视图没有问题,只有这个通用的。但是在其他视图中,我也发送数据以在字典中导航到模板,但不知道该怎么做有一般意见。有什么建议吗?

4

1 回答 1

0

您应该使用上下文处理器将导航树发送到所有视图,包括通用视图,而不是从每个视图手动传递。

于 2012-06-05T18:46:12.307 回答