學習有一段時間了,與其在家無所事事,不如宅家貢獻學習兩不誤。很多人學習 都是因為它簡單,卻功能強大。但是學著學者就從入門到放棄了,主要是沒有目標。
比如你想做一個爬蟲,或者想寫一些自動化的腳本提高工作效率,或者進行數據分析幫公司提高運營效率,用數據驅動運營。人一定有目的才有動力,而我學主要是為了后端運維使用。
一百行代碼能實現一個簡單的網頁后端么?答案是可以的,下面我來帶大家快速實現一個Flask后端程序。
01
整體項目設計
今天給大家寫一個后端入門的小程序,要求是盡量簡單,有數據交互。所以在這里選用了Flask框架,數據庫用了最簡單的。因為要做一個數據展示,所以在這里用了豆瓣電影的數據。
為了便于理解,我沒有設置復雜的項目結構,整個項目只有五個文件制作個人網站框的代碼,包括兩個py文件和三個html文件,文件結構如下:
02
項目實戰
一說起配置項目,很多人都是一個頭兩個大。Flask就相對特別友好制作個人網站框的代碼,具體的配置思路就是我不要你覺得,我要我覺得。一切都使用默認配置,只對自己需要修改的配置進行更改。
1).項目配置
flask提供了很多默認的配置,很多情況下不用特別配置就使用默認的配置就可以了。比如在app同級的文件夾用來存放網頁模板,同級的文件夾用來存放靜態文件等等。我們對這些不做更改,使用默認配置。所以呢,我們這里需要配置的只有數據庫連接,代碼如下:
2).數據庫的設計
數據庫設計是一個應用最重要的基石,一個應用的好壞主要就看數據庫的設計,所以說這里需要重點說一下數據庫的設計。這里選用的是是數據庫,這是一個非常簡單的關系型數據庫。
關系數據庫是建立在關系模型上的數據庫,所以表之間的關系在數據庫編程中尤為重要。我們這次這個應用比較簡單,只有兩張表,采用一對多的模型進行設計。
整個數據庫我們設計兩張實體表,電影信息表和評論表。電影信息表中包括了我們從豆瓣電影中爬到數據,使用豆瓣的作為主鍵約束。
評論表中主鍵無實際意義,使用自增長模式。使用字段作為與電影信息表做關聯。如圖所示,電影信息表與評論表為一對多的關系。
數據存儲格式說明:
比如在這里,我直接將豆瓣網的圖片url存放在我的數據庫中,用的時候直接調用即可。
3).轉為表達方式
03
Flask項目邏輯