我是django世界的新手。在做和学术项目时,我需要在django中实现树结构。
这个概念是建立一个用户层次结构,以便一个用户可以作为另一个用户的下属。
这是我的models.py
from django.db import models
from django.contrib.auth.models import User
import mptt
from mptt.models import MPTTModel, TreeForeignKey
class App_model(models.Model):
case_id = models.CharField(max_length=30)
p_stn= models.CharField(max_length=50)
case_description= models.TextField()
officer= models.ForeignKey(User)
date_created=models.DateTimeField(auto_now=True,auto_now_add=False)
class Testmptt(MPTTModel):
name = models.ForeignKey(App_model)
parent =TreeForeignKey('self',null=True,blank=True,related_name='children',db_index=True)
mptt.register(Testmptt)
我的settings.py
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'debug_toolbar',
'mptt',
'django_mptt_admin',
我的admin.py
from officerapp.models import App_model
from django_mptt_admin.admin import DjangoMpttAdmin
class App_modelAdmin(DjangoMpttAdmin):
pass
admin.site.register(App_model,App_modelAdmin)
问题是当我使用管理界面时,它在从服务器加载时显示错误。
此错误的屏幕截图位于以下链接中。
有人帮忙吗?
答案 0 :(得分:0)
我的猜测是你在非MPTT模型上使用MPTTAdmin类 - 所以管理页面正在寻找App_model没有的一堆字段。您需要在Testmptt模型上使用MPTTAdmin。