0
考慮我有一個模型Attrib,它帶有一個字段attrib_type,它爲我提供了可能接收的輸入類型。對於類型「A」,我創建了AttribA,對於「B」AttribB,對於「C」AttribC。它們的創建是爲了分別爲每種類型保留投入。在這些投入的基礎上,我需要創造就業機會。我已經拿出了:Django ORM根據不同領域的模型的最佳做法
class Attrib(models.Model):
user = models.ForeignKey(User)
attrib_type = models.CharField(max_length=2)
class AttribA(models.Model):
some_property_a = models.CharField(max_length=50)
attrib = models.ForeignKey(to='Attrib',
related_field='a')
class AttribB(models.Model):
some_property_b = models.CharField(max_length=50)
attrib = models.ForeignKey(to='Attrib',
related_field='b')
class AttribC(models.Model):
some_property_c = models.CharField(max_length=50)
attrib = models.ForeignKey(to='Attrib',
related_field='c')
class Job(models.Model):
some_property_job = models.CharField(max_length=50)
attrib = models.ForeignKey(to='Attrib',
related_name='jobs')
status = models.CharField(max_length=2)
這是一個好方法或應該以不同的方式完成嗎?如果我可能需要定期爲用戶檢索作業和屬性,設計是否仍然有效?我正在使用MySQL。
它你想要做什麼還不是很清楚,但你的模型似乎很奇怪,我會建議: – Marc