MTPP和MTTPAdmin。管理员视图

时间:2014-03-19 07:37:10

标签: python django django-models django-admin django-mptt

我需要在django服务器中使用类别,我目前正在使用mpttmptt-admin。这就是我想要做的事情:

#### models.py ####

class File(MPTTModel)
name = models.CharField(max_length=20)
description = models.CharField(max_length=500)
....
parent = mptt.fields.TreeForeignKey('Category', blank=False, null=False, related_name='children', db_index=True)


class Category(MPTTModel):
    name = models.CharField('Category', max_length=20, blank=False, unique=True)
    parent = mptt.fields.TreeForeignKey('self', blank=True, null=True)

两者都已注册:

mptt.register(Category,)
mptt.register(File, parent = Category)

admin.py

class FileAdmin(admin.ModelAdmin):
    fieldsets = [
    ...
    ]
    list_display = ('name',)

class CategoryAdmin(DjangoMpttAdmin):
    tree_title_field = 'name'
    tree_display = ('name',)


admin.site.register(File, FileAdmin)
admin.site.register(Category, CategoryAdmin)

我也尝试用ForeignKey替换TreeForeignKey和用models.Model替换MPTTModel,但我得到了相同的结果。

在mysite / admin中,我可以添加类别和文件。每个文件都有一个类别。删除类别时,所有相关文件也会被删除,但如何通过mptt-admin显示包含所有子文件的类别?

顺便说一下,当我在同一个类中创建父项时,所有子文件都已显示。

0 个答案:

没有答案