我正在开发我的第一个Django应用程序。我的目标是要有两个模型,一个用于办公室,一个用于雇员,当创建个人记录时(在管理站点中),创建并指定房间也会将该人填充到该房间中。
我能够创建模型,但是现在我陷入了陷阱22,当我添加一个人时,我必须创建一个房间,但是要创建一个房间,我必须添加一个人,依此类推。 ..
如何创建和自动填充这样的房间?
以下是models.py
中的相关代码:
class Room(models.Model):
number = models.CharField('Room number', primary_key=True, max_length=50)
occupant = models.ManyToManyField('Person', blank=True) # Can have multiple occupants
class Person(models.Model):
name = models.CharField('Full name', max_length=200)
office = models.ForeignKey(Room, on_delete=models.SET_NULL, null=True) # Some offices may not have an occupant
更新:我在blank=True
中添加了office
,因此我可以创建一个无人居住的办公室。但是,即使我添加了一个人并将其office
分配给该号码,它也表明在管理页面中,详细视图页面似乎并没有抓住这一点,除非我手动进入{{ 1}}管理页面,然后选择此人。那部分可以自动化吗?