在Django后台中,通過模型操作數據,對數據庫進行增操作時,報出異常,如圖:

意為無法分配給“3”這個uid號,“OrderList.uid”必須是一個“User”的實例,即“OrderList.uid”不能為“3”
在通過數據庫sql語句上,我們習慣性insert into orderlist(uid) value("3")是可以正常增加數據的。
但是在通過Django操作數據庫時,不需要寫sql語句,通過模型操作數據庫:

傳值無法成功,其原因是因為orderlist表中的uid關聯User表中的uid(主鍵),通過Django進行增操作時,Orderlist.uid需要一個User的實例(外鍵約束),將orderlist字典改成如下:
即可成功進行增操作。
類似的:
其他使用Django模型對數據庫操作時,如有依賴關系,則參數的值也需要為一個對象,或查詢到的外鍵是一個對象,例:

如果通過bid=o.bid用過濾查找 book表下bid的書名將會報錯:

我們打印一下 o.bid:

結果為:

o.bid拿不到真正的id號,而是一個Book類型的對象,其原因是bid為關聯Book表的外鍵約束,o.bid.bid才可以拿到想要的id值:

結語:以上,是我第一次隨筆,在Django大而全的框架下,其中的操作方便、快捷,讓開發者節約時間,但是也需要遵守它的規則,才能釋放
Django和python的魅力。
