python:model:属性可以引用同一模型中的属性吗?

时间:2011-02-23 22:25:20

标签: django foreign-keys models

这个问题可能会赢得最愚蠢的问题,但我会试一试

我的模型中有一个简单的菜单类:

class Menu(models.Model):
name = models.CharField(null=False, blank=False,unique=True,max_length=50)
url = models.CharField(null=False, blank=False, unique=True,max_length=100)
sortOrder = models.IntegerField(null=False, blank=False, default=0)

这将很高兴让我构建一个级别的菜单项。

如果我想进一步添加另一个级别,如何从同一个模型中创建项目引用和ID,并确保此ID不是同一项目的ID?

所以实际上有两个问题:

1。如何设置同一个类的ForeignKey和id?无论是菜单还是自我都不会被验证:

class Menu(models.Model):
name = models.CharField(null=False, blank=False,unique=True,max_length=50)
url = models.CharField(null=False, blank=False, unique=True,max_length=100)
sortOrder = models.IntegerField(null=False, blank=False, default=0)
**parent = models.ForeignKey(Menu)**

将抛出:

NameError:名称'Menu'未定义

2。如何确保此商品的ID不是此商品的ID?

1 个答案:

答案 0 :(得分:1)

尝试自我

parent = models.ForeignKey( 'self' )