【问题标题】:Django mptt join/merge modelsDjango mptt 加入/合并模型
【发布时间】:2023-12-20 06:37:02
【问题描述】:

我有这两个模型:

class Folder(MPTTModel):
    name = models.CharField(max_length=20)
    description = models.CharField(max_length=200, null=True, blank=True)
    parent = TreeForeignKey('self', null=True, blank=True, related_name='children')
    position = models.IntegerField(default=0)

    class MPTTMeta:
        order_insertion_by = ['position']

class Page(MPTTModel):
    title = models.CharField(max_length=50)
    file_content = models.TextField()
    parent = TreeForeignKey(Folder, null=False, blank=False, related_name='page', on_delete=models.CASCADE)

我一直在尝试,但我找不到任何解决方案。

有没有办法将这两个模型合并到一个树形图中? 这个想法是一个文件夹可以包含一个文件夹或一个页面

我正在使用 django 1.6.5 和 python3

【问题讨论】:

    标签: python django django-mptt mptt


    【解决方案1】:

    也许你应该创建一个抽象超类。然后你可以让这个类(文件夹和页面)都继承,你可以在那里定义父关系。

    【讨论】: