豬年上班的第一天,各位大佬們新年快樂!
一早來溫故了一些過去的知識點,感受仍是django表關係之間仍是略帶生疏,而後本身參悟了一波django
django的表關係常見的無非是一對一,一對多,多對多spa
- 一對多,models.ForeignKey(ColorDic)
- 一對一,models.OneToOneField(OneModel)
- 多對多,authors = models.ManyToManyField(Author)
- 一對一:在某表中建立一行數據時,有一個單選的下拉框(下拉框中的內容被用過一次就消失了)。
例如:與同事合做開發過程當中兩人都用到一某個表,這個表原有含10列數據,通過一段時間以後,發現10列沒法知足本身的需求,須要爲原來的表再添加5列數據,可是爲了避免影響同事的使用,能夠使用一對一關係設計表,新的表中只須要包含要新加的這5列數據便可。
- 一對多:當一張表中建立一行數據時,有一個單選的下拉框(能夠被重複選擇)。
例如:建立用戶信息時候,用戶信息中包含用戶類型(普通用戶、管理員、超級管理員),用戶與用戶類型就屬於一對多關係。一個用戶對應一種用戶類型,但一種用戶類型能夠包含多個用戶。
- 多對多:在某表中建立一行數據時,有一個能夠多選的下拉框。
例如:建立用戶信息,須要用戶選擇愛好,一個用戶能夠有多個愛好,一種愛好能夠被多個用戶選擇。
2. 舉例詳解