簡體   English   中英

django-mptt的全局名稱未定義

[英]global name from django-mptt is not defined

所以它一定是基本的,但我不能弄清楚。

我只是在教程之后嘗試使用django-mptt

在models.py中創建

    @with_author    
class Tree(MPTTModel):
    name = models.CharField(max_length=50, unique=True)
    parent = TreeForeignKey('self', null=True, blank=True, related_name='children', db_index=True)

    class MPTTMeta:
        order_insertion_by = ['name']

和在views.py

 def show_tree(request):
     return render_to_response("item/tree.html",
                           {'nodes':Tree.objects.all()},
                           context_instance=RequestContext(request))

但是我不知道如何將模型中的樹導入視圖

我嘗試了不同的組合

from myapp.models import Tree
from myapp.MPTTModel import Tree

等,但它無法正常工作,並且沒有導入Tree我收到錯誤消息

global name 'Tree' is not defined

追溯:

File "C:\Users\I812624\dev\mrp\lib\site-packages\django\core\handlers\base.py" in get_response
  132.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Users\I812624\dev\mrp\src\item\views.py" in show_tree
  118.         {'nodes':Tree.objects.all()},context_instance=RequestContext(request))

Exception Type: NameError at /item/tree/
Exception Value: global name 'Tree' is not defined

我想通了

我有幾個問題:

必須包含在view.py中

from item.models import Tree
from django.template import RequestContext

而另一個問題是@awwester建議的命名錯誤

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM