0
說我有以下型號:Django的數據庫設計 - 原爲
class Person(models.Model):
street_address = models.CharField(max_length=50, blank=True)
suburb = models.CharField(max_length=30)
postcode = models.IntegerField()
state = models.CharField(max_length=3)
email = models.EmailField()
mobile_phone_number = models.IntegerField(max_length=12)
home_phone_number = models.IntegerField(max_length=10, null=True, blank=True)
work_phone_number = models.IntegerField(max_length=8, null=True, blank=True)
spouse = models.ForeignKey('self', null=True, blank=True)
children = models.ManyToManyField('self', null=True, blank=True)
一些上述領域的意圖是可選的(例如STREET_ADDRESS,home_phone_number和work_phone_number,以及配偶/子女)。
在Django中,對於CharField字段,可以設置「空白=真」,如果用戶離開表單字段爲空,Django存儲一個空字符串。沒關係。
但是,對於像home_phone_number和work_phone_number這樣的整數字段,這不起作用 - 我不得不使用「null = True」來處理未在這些詳細信息中提交的人的情況。有沒有更好的方法,明智的模型/數據庫設計來處理這個問題,而不是NULL?
最後,可選外鍵像配偶/子女(一個人可以不結婚,或者沒有孩子),你應該如何處理這些?
乾杯, 維克多
亞當五:感謝您的快速反應=)。是的,在閱讀更多內容之後,你說得對,電話號碼應該是字符串,它不喜歡我會對它們進行數學運算。 – victorhooi 2010-11-30 05:02:12