在Django管理员中自动填充关系

时间:2018-06-22 21:55:14

标签: python django

我正在开发我的第一个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}}管理页面,然后选择此人。那部分可以自动化吗?

0 个答案:

没有答案