0

django.contrib.auth.view.login ビューを使用して Django MPTT に問題があります。

urls.py には

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

私のテンプレート registration/login.html はベースの template-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 に答える