我正在创建一个医生预约系统,我也确实包括处方
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_name
和clinic_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
,所以帖子仍然有作者的名字。