处理Django中的外键



我正在创建一个医生预约系统,我也确实包括处方

class Prescription(models.Model):
id = models.UUIDField(default=uuid.uuid4, primary_key=True, editable=False)
user = models.ForeignKey(User, on_delete=models.CASCADE)
doctor = models.ForeignKey(Doctor, null = True, on_delete=models.SET_NULL)
clinic = models.ForeignKey(Clinic, on_delete=models.SET_NULL)

我在想,如果医生因为某些原因删除了他的帐户,如果发生这种情况,医生或诊所可以设置为null吗?

您可以在models.py:

中添加doctor_nameclinic_name字段。
class Prescription(models.Model):
id = models.UUIDField(default=uuid.uuid4, primary_key=True, editable=False)
user = models.ForeignKey(User, on_delete=models.CASCADE)
doctor = models.ForeignKey(Doctor, null = True, on_delete=models.SET_NULL)
clinic = models.ForeignKey(Clinic, on_delete=models.SET_NULL)
doctor_name = models.CharField(max_length=100, blank=False)
clinic_name = models.CharField(max_length=100, blank=False)

并每次添加医生姓名和诊所名称。但是,这是非常多余的....

实际上,这里是stackoverflow的数据库模式->url。
你可以看到,有OwnerDisplayName,所以帖子仍然有作者的名字。

相关内容

  • 没有找到相关文章

最新更新