python - 您将如何为这种数据库关系建模?

标签 python database django database-design

我正在django中建模数据库关系,我想有其他意见。这种关系是一种二对多关系。例如,一个病人可以有两个医生:主治医生和主治医生。一个医生显然有很多病人。

应用程序确实需要知道哪个是哪个;此外,在某些情况下,一名患者的主治医生可能是另一名患者的主治医生。最后,主治和主治通常是相同的。

起初,我在想从患者表到医生表的两个外键。但是,我认为 django 不允许这样做。另外,转念一想,这确实是一个多(二)对多的关系。

因此,我如何在保持与患者相关的医生类型的同时,用 django 对这种关系进行建模?也许我需要将医生类型存储在多对多关联表中?

谢谢, 皮特

最佳答案

这样的事情怎么样:

class Patient(models.Model):
    primary_physician = models.ForeignKey('Physician', related_name='primary_patients')
    attending_physicial = models.ForeignKey('Physician', related_name='attending_patients')

这允许您对同一个模型有两个外键; Physician 模型还将包含名为 primary_patientsattending_patients 的字段。

关于python - 您将如何为这种数据库关系建模?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1162877/

相关文章:

python - 如何使用python向MySQL表中添加记录?

mysql - DBMS 和数据库服务器软件

java - 使用流进行迭代时,ForeignCollection 会抛出 SQLException

python - django 的 makemigrations 中的自动回答

django - django 中的 email_ iexact 在 postgresql 上不起作用?

django - 自定义用户类会破坏 django 中的应用程序吗?

python - 如何使用python 3.5.3在树莓派中安装tensorflow

python - 如何刷新Mechanize中的页面?

python - 如何修复 "Failed building wheel for pyscipopt"?

python - 字符串索引在python中为什么必须是整数?