MPTT-类别树子类别未显示类别

问题描述

我试图在 Django 环境中使用 mptt 库创建类别和子类别。 mptt lib 安装成功。在 model.py(file) 中创建的 Category(name) 模型。在 Admin.py mptt 中。 MPTT- 类别树子类别未显示在 admin.py 面板中使用以下代码创建的任何类别 MPTTAdmin --> 它不显示任何 list_display 以及类别和子类别值,如下面的附图所示。

[管理员中的类别][1]

显示10 个类别而不是子类别 [1]:https://i.stack.imgur.com/2GtfA.png

# Register your models here.
from product.models import Category,Product,Images
from mptt.admin import DraggableMPTTAdmin



class CategoryAdmin(admin.ModelAdmin):
    list_display = ['title','parent','status']
    list_filter = ['status']
    #mptt 

class CategoryAdmin2(DraggableMPTTAdmin):
    mptt_indent_field = "title"
    list_display = ('tree_actions','indented_title','related_products_count','related_products_cumulative_count')
    list_display_links = ('indented_title',)

    def get_queryset(self,request):
        qs = super().get_queryset(request)

        # Add cumulative product count
        qs = Category.objects.add_related_count(
                qs,'category','products_cumulative_count',cumulative=True)

        # Add non cumulative product count
        qs = Category.objects.add_related_count(qs,'products_count',cumulative=False)
        return qs

    def related_products_count(self,instance):
        return instance.products_count
    related_products_count.short_description = 'Related products (for this specific category)'

    def related_products_cumulative_count(self,instance):
        return instance.products_cumulative_count
    related_products_cumulative_count.short_description = 'Related products (in tree)'


#product  pictures
class ProductimageInline(admin.TabularInline):
    model = Images
    extra = 5
    #5 similar pictures
    

class ProductAdmin(admin.ModelAdmin):
    list_display = ['title','status']
    list_filter = ['category']
   # readonly_fields = ('image_tag',)
    inlines = [ProductimageInline]

admin.site.register(Category,CategoryAdmin2)
admin.site.register(Product,ProductAdmin)
admin.site.register(Images)

models.py 文件

class Category(MPTTModel):

    STATUS = (
        ('True','True'),('False','False'),)
    #parent = TreeForeignKey('self',blank=True,null=True,related_name='children',on_delete=models.CASCADE)
    parent = TreeForeignKey('self',on_delete=models.CASCADE)
    title = models.CharField(max_length=50)
    keywords = models.CharField(max_length=255)
    description = models.TextField(max_length=255)
    image=models.ImageField(blank=True,upload_to='images/')
    status=models.CharField(max_length=10,choices=STATUS)
    slug = models.SlugField(null=False,unique=True)
    create_at=models.DateTimeField(auto_Now_add=True)
    update_at=models.DateTimeField(auto_Now=True)

    def __str__(self):
        return self.title
    class MPTTMeta:
        order_insertion_by = ['title']

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...