我正在尝试在 Django 中创建一个无限嵌套的类别树。
class Category(models.Model):
ParentCategory = models.ForeignKey(Category, blank=True)
Name = models.CharField(max_length=255)
这里的想法是,所有没有 ParentCategory
的类别都是主要类别(级别 0)。所有 ParentCategory 属于级别 0 的都是级别 1,依此类推。
这里唯一的问题是我无法在其内部引用Category
。显然,返回的错误是:NameError: name 'Category' is not Defined
at line 3.
我该如何解决这个问题?可能吗?
最佳答案
由于在定义字段时尚未创建模型,因此您可以使用 self
来引用同一模型:
class Category(models.Model):
parent = models.ForeignKey('self', blank=True, null=True)
name = models.CharField(max_length=255)
关于python - Django 中的无限递归/嵌套类别树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32938650/