嗨大家好,我本身是一名研究生,這是我第一次參加鐵人賽,平常也沒有寫文章的習慣,以前就一直知道鐵人賽的存在,也常在鐵人賽中收穫許多,不過都不敢踏出舒適圈挑戰一次XD,作為第一次挑戰,想先跟大家說,自己的文筆沒有很好,寫出來的東西有時候回頭看還會看不懂,所以如果有有出現語句不通順或看不懂,歡迎告訴我,我會馬上修改!
這次想要參賽的原因是想藉此機會讓自己整理一下自己所學的Django並更深入的去了解它,我自己以前在課堂上和line chatbot 也只有使用過一點,對它其實也沒有很深入的了解。因此透過這次機會想要把自己會的東西做一個整理並更深入的去探索Django。
在接下來的30天,會跟大家一起來盡量探索Django,並以完成一個網站為完賽目標。希望透過這次機會,和大家多多交流,如果發現寫的地方有誤,也希望大家不吝嗇的指正,謝謝大家。
要講Django前就必須來介紹一下,何謂Django?
Django是Python一個很有名的網路框架,並且可以快速開發安全和可維護的網站。
它具有一些特色:
1.開源免費。
2.注重組件的重用性和「可插拔性」。
2.遵守DRY法則(Don't Repeat yourself)也就是避免重複原則,讓程式碼可以更加精簡。
3.類似於MVC架構的MTV架構。
相信大家都對MVC架構蠻熟悉的,Django的MTV,Model和MVC是一樣的。和MVC較為不同的是View在MVC指的是呈現獲取的資料給使用者。而Django的View和Template都是對應到MVC的View。Controller比較常聽到的說法就是Django本身。
用來封裝處理用戶Request和Response的邏輯。通常會是URLS對應到一個Callback Function,Callback Function會決定哪一個資料被獲取,並呈現給使用者看。和MVC的View不一樣的地方是,MTV的View是去控制使用者要看到的內容。而不是單純呈現給使用者的畫面。
用來將資料呈現給使用者看,常用於管理HTML的文件。因此的View和Template做的事比較像是MVC的View一樣。
用於管理資料庫,並對資料庫進行增查刪改(CRUD)。和MVC的Model一樣。
下面這張圖就是當User對Django 發起Request時,Django會如何運行的流程。
那我們今天就介紹到這裡,明天將會開始建置我們開發的環境!
我們明天見囉~
Django The web framework for perfectionists with deadlines.
用Django架網站一點都不難?MTV架構又有什麼好處呢?