python – 前向声明 – django中没有管理页面?
发布时间:2020-12-20 12:15:32 所属栏目:Python 来源:网络整理
导读:这可能是数据库设计问题,但我无法弄清楚.在其他几个方面,我有这些模型: class User(models.Model): name = models.CharField( max_length=40 ) # some fields omitted bands = models.ManyToManyField( Band ) 和 class Band(models.Model): creator = mode
这可能是数据库设计问题,但我无法弄清楚.在其他几个方面,我有这些模型:
class User(models.Model): name = models.CharField( max_length=40 ) # some fields omitted bands = models.ManyToManyField( Band ) 和 class Band(models.Model): creator = models.ForeignKey( User ) # some fields omitted name = models.CharField( max_length=40 ) 所以基本上,我有一个用户实体,它与一个带实体有很多很多关系.扭曲的是,我想要一个特殊的用户,他在网站上“创建”了乐队以获得特殊的编辑功能.所以我继续前进,并添加了一个名为creator的ForeignKey.代码无法运行,因为Band来自源中的User.所以我转发声明的类Band(models.Model):pass.遗憾的是,这似乎并不是一个好主意,因为现在Band是唯一没有在django admin中显示任何界面元素的模型(Bands模型就在那里,它只是无法编辑). 我的问题是,我应该在模型中做出哪些改变才能使这项工作正常进行? (如果有的话) 解决方法
见:
http://docs.djangoproject.com/en/dev/ref/models/fields/#foreignkey,其中说:
class Car(models.Model): manufacturer = models.ForeignKey('Manufacturer') # ... class Manufacturer(models.Model): # ... (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |