認爲有從模型運行的遷移定義爲是外鍵參考儲存在Django的水平或MySQLdb的
CREATE TABLE `table2` (
`id` int(11) NOT NULL DEFAULT '0',
`table1_id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
爲
CREATE TABLE `table1` (
`id` int(11) NOT NULL DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=latin1
和table2
創建一個MySQL表。
在這裏表2引用1,這種關係在模型中提到。現在,當我在MySQL中查詢這些表時,我看不到任何類似於從table2到1的引用。
我想知道django是否負責存儲這些關係。如果是這樣,那麼萬一我必須將我的ORM從django更改爲其他東西,我該如何設法遷移這些關係。
另外,如果我把它看作是「ORM只是一個確保這些關係應該遵守的包裝」,那麼爲什麼不在通過遷移創建表時創建這樣的關係。這意味着確保引用成爲表定義的一部分。所以明天如果我選擇使用另一個ORM,我需要做的就是導入表定義。
如果我錯了,請糾正我。
似乎django確實確保這些關係成爲表定義的一部分。我看着錯誤的地方。謝謝大家。 – techsavvy