手把手程式實作分享系列:Django初體驗

Walter Chiu
Bandai的機器學習筆記
5 min readJul 25, 2019

簡介

在開始手把手教大家動手做前,先來認識一下 Django 的設計模式,也就是 MTV:

Model : 定義一些資料庫的東西 ( ORM ),這層通常是直接和資料有關。

Template : 使用者基本上就是看到這層,也就是最後所呈現的 Template ( html )。

View : 可以將這層看做是中間層,它主要負責 Model 和 Template 之間的業務邏輯。

介紹了 Django 的設計模式,接下來你一定會問,那這有什麼好處 ❓

最直接的好處就是,我們可以很明確且很快速的知道問題在哪裡,例如,今天可能頁面出了問題,

這樣我們就會知道要先去 template 中找問題,而如果是關於資料庫的問題,則可能就要先去 Model中找,總之,就是不會像一隻無頭蒼蠅一樣不知道要去哪裡找問題。

教學

請先確認電腦有安裝 Python

接著我們安裝 Django

請在你的命令提示字元 (cmd ) 底下輸入

pip install django==1.11.9

( 會指定版本的原因是因為 django 2.0 開始有些東西不太一樣 )

基本上安裝應該沒什麼問題,可以再使用 cmd 確認,如下圖

建立 Django Project

使用指令的方式來建立,指令如下

django-admin startproject django_tutorial

後面django_tutorial是可變的參數,可改成自己喜歡的名字。

p.s 不要自己沒進入桌面或搞不清楚現在的指定位置,結果說找不到資料夾耶…..在執行時,記得看一下自己位置在哪裡。或者就先打cd desktop

執行 Django

進入剛剛創立的資料夾

cd django_tutorial

在命令提示字元 (cmd ) 底下輸入

python manage.py runserver

然後去Chrome或其任何瀏覽器進入: http://127.0.0.1:8000/

會發現下面頁面。

恭喜你~ 成功第一步了 😄

建立 Django App

先建立一個觀念,在 Django 中,通常我們會依照「功能」去細分每一個 App , 例如打成 crawler ,代表他是管理「爬蟲」 的部份。

有了這個觀念之後,我們動手開始做吧~

請在你的命令提示字元 (cmd ) 底下輸入

python manage.py startapp crawler

那後面crawler的部分,也是大家可以自己修改的喔!

如果順利執行,你會發現你的專案內多出一個 crawler 資料夾

建立完請記得要將 App 加入設定檔

請在 settings.py 裡面的 INSTALLED_APPS 加入 crawler (也就是你自己建立的 App 名稱)

Views

請再你的APP下方新增一個 templates 資料夾,裡面在新增一個 hello_django.html,並在裡面輸入下方程式碼 (下圖)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{{data}}
</body>
</html>

hello_django.html 裡面的第 8 行,會透過 views.py 傳值過來。

關於第 8 行 的用法,更多可以參考 Django Templates

接著我們將 views.py 裡面新增下方程式碼 (下圖)

from django.shortcuts import render
# Create your views here.
def hello_view(request):
return render(request, 'hello_django.html', {
'data': "Hello Django ",
})

views.py 裡面的第 7 行,就是回傳給 hello_django.html 的資料。

注意,最後還必須設定 URLconf。

URLconf

請再將 urls.py 裡面增加一些程式碼,如下圖

from django.conf.urls import url
from django.contrib import admin
from crawler.views import hello_view
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^hello/', hello_view),
]

簡單講,就是將 views.py import 進來 (第 18 行),

並且設定他的 URL (第 22 行)

最後執行 Django , 然後瀏覽 http://127.0.0.1:8000/hello/

進入網頁後,你應該會看到如下圖

那初步的教學就這樣可以完成了! 下次真的來套用一些爬蟲的應用!

--

--

Walter Chiu
Bandai的機器學習筆記

台大電機博士候選人,主要學習電腦科學、資訊教育,關心各種時事議題,歡迎一起討論有趣的專題 dodo0095@hotmail.com