首页 > 解决方案 > 在 Django admin 中自动填充关系

问题描述

我正在开发我的第一个 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给该号码,并且它显示在管理页面中,详细视图页面似乎没有抓住它,除非我手动进入Room管理页面并选择该人。那部分可以自动化吗?

标签: pythondjango

解决方案


推荐阅读