---
# System prepended metadata

title: '[Django] - 肆、建立Django專案&app'
tags: [webdevelopment]

---

---
title: \[Django] - 肆、建立Django專案&app
tags: webdevelopment
---

哈囉，前面規劃完網站大致的內容和需要的頁面之後。
我們要開始來一步一步完成網站啦。
如果不知道該怎麼做，最直接的方法就是打開[Django](https://docs.djangoproject.com/en/5.2/)的文件，找到自己需要的內容，把它看完大概就知道怎麼做了。

那接下來我們就開始進入正題吧！

在每個專案開始前，我們需要建立一個虛擬環境來設定專案專屬的python版本以及會用到的套件。虛擬環境主要是當開發的專案很多的時候，有些套件或是功能放在同一個環境會互相衝突、出Bug，這時就可以用虛擬環境把他們分開，避免專案出問題。
可以想像成，養魚的時候如果把所有種類的魚放在同一個魚缸，不同魚的習性不同，可能會讓某些魚被吃掉或是適應不良。預先把不同的魚養在不同魚缸，就可以避免一些問題發生。

大家可以依照自己方便的方法去建立這個虛擬環境。
常見建立虛擬環境的方法可以搜尋以下幾個：
1. anaconda
2. venv
3. virtualenv

這邊就不贅述，虛擬環境建立好，也在虛擬環境中安裝好Django之後，我們就開始建立Django專案吧。

這邊會依照文件中「Getting started」的「Writing your first django app」的順序搭配一些自己的改變來完成網站。
如果想看更仔細的說明，我推薦直接去看Django的文件喔！

我們這次使用的python及Django版本如下，提供給大家參考
python: 3.13.5
Django: 5.2.1

首先建立一個資料夾「seorank」
用IDE(我使用的是VSCode)開啟資料夾，打開Termianl，並啟動環境
Terminal大概會像圖片這樣
![Screenshot 2025-07-30 at 13.22.26](https://hackmd.io/_uploads/SJ4Q3QDPlx.png)

- (seorank_)是虛擬環境的名稱
- 最後的seorank則是目前所在的資料夾名稱

由於我們想把專案放在seorank的資料之中，所以我們回到上一層的資料夾中
在Terminal輸入
```code=python
django-admin startproject webstie seorank
```
![Screenshot 2025-07-30 at 13.27.28](https://hackmd.io/_uploads/Hk686QPwxg.png)

「django-admin startproject」是Django的指令，「website」是專案名稱，「seorank」則是想建在哪個資料夾中。

成功之後，左邊的目錄結構會變成圖中的樣子。在seorank資料夾中有seorank_、website兩個資料夾以及一個manage.py檔案。seorank_是虛擬環境的相關檔案，website之中則包含了一些專案的設定檔，mamage.py則是之後可以用來執行一些Django相關的指令包含設定資料庫或是把自己的電腦暫時當作伺服器來運作並測試網站。

當建立好專案後，我們其實也成功建立了可以用瀏覽器瀏覽的網站囉！
移動到seorank資料夾，接著可以直接在Terminal中輸入
```code=python
python manage.py runserver
```
![Screenshot 2025-07-30 at 13.42.05](https://hackmd.io/_uploads/HJH0eNvPgx.png)

可以看雖然我們還有一些東西沒有設定好，但是Django已經在我們的電腦上成功運作這個空殼網站了。直接按住Control(Mac則是Command)點選就可以用瀏覽器瀏覽囉。
![Screenshot 2025-07-30 at 13.44.53](https://hackmd.io/_uploads/SktP-Nvwlx.png)

打開之後可以看到，「恭喜你成功了！！！」的提示訊息。
如果想要關掉回到Terminal按下Control+C就可以關閉囉。


建立好專案之後，下一步就是來建立應用程式啦。應用程式在Django中是用app這個字表示。

在Terminal中輸入
```code=python
python manage.py startapp ranking
```

完成後，可以看到目錄多了一個資料夾，裡面包含了這些檔案
![Screenshot 2025-07-30 at 13.55.36](https://hackmd.io/_uploads/Sy6JEVwDxg.png)

接下來做一些測試，讓大家可以快速看一下結果
(下面這些程式碼都可以直接複製貼上)

在ranking/views.py中打上
```code=python
from django.http import HttpResponse

def index(reqeust):
    return HttpResponse("哈囉，你現在在ranking index")
```

在ranking資料夾中建立一個檔案叫做「urls.py」
並輸入：
```code=python
from django.urls import path

from . import views

urlpatterns = [
    path("", views.index, name="index"),
]
```

在seorank/urls.py中：
```code=python
from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path("ranking/", including("ranking.urls")),
    path("admin/", admin.site.urls),
]
```
輸入完成後記得要儲存
接著在Terminal輸入
```code=python
python manage.py runserver
```

打開之後再網址後面加上剛剛建立的app名稱
![Screenshot 2025-07-30 at 14.05.54](https://hackmd.io/_uploads/rkT88EPvxx.png)
![Screenshot 2025-07-30 at 14.06.03](https://hackmd.io/_uploads/H18vINDDle.png)
就可以看到這個結果囉！


謝謝大家的收看！
不知道看完這篇，大家有沒有了解如何建立Django專案和app呢

如果有任何想法或是問題歡迎寄信到 chantinghsien@gmail.com
可以一起討論和分享新知