有互動才是王道!!
學過Python的朋友應該都知道,Python有個很方便的互動shell,可以讓你在互動的指令模式底下,試驗一下程式碼是不是可以正確執行,是個相當方便的工具。在Django也提供了類似的工具,只要輸入python manage.py shell,就會進入shell模式,而且還有把該專案的一些設定也一起加進來,也就是說你可以在shell裡面直接就可以操作資料庫。
接著來看看怎麼樣在shell裡面新增/修改/刪除資料:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | |
從上面的程式碼可以看到,我們都是透過Profile類別來做操作,例如我們在第10行建立了一個Profile類別的實體eddie,並在建立的時候傳入了一些參數(其實這些參數就是每個欄位的對應名稱),接著我們在第11行執行eddie.save(),這樣就新增了一筆資料到profile的資料表裡了;第21行,透過get方法取得一個id = 1的物件出來,第25行設定新值之後,第26行一樣執行someone.save()進行資料的更新;如果你要刪除該筆資料,在第28行執行delete(),該筆資料就會被刪除。
透過類別跟物件的操作,讓你可以不用寫SQL語法也能操作資料庫。
要提醒大家,不用寫SQL語法不代表你可以不用懂SQL語法,事實上像這樣的ORM(Object-Relational Mapping)只是讓你用比較抽象的方式來操作資料,但如果你不知道實際上它到底幫你做了什麼事,當你要組合比較複雜的查詢的時候就會踢到鐵板了。