用Django框架開發一個簡單的企業網站(一)
Python有許多不同的 Web 框架,Django是重量級選手中最有代表性的一位,許多成功的網站和APP都基於Django。
既然如此,那麼……
老規矩,先安裝Django框架,我的Django版本:
安裝完成後在想儲存專案的目錄下執行命令,新建一個專案:
django-admin startproject testdj
然後進入專案目錄,執行命令,建立一個app(應用):
cd testdj
python manage.py startapp my_app
建立後目錄結構如下:
關於Django中專案與app(應用)的關係,一個專案下可以有多個app,(多人協作開發更方便)具體每個應用的路由在專案資料夾下的urls.py檔案中配置:
現在我換回目前正在寫的專案,專案名:my_web,app名:web_app
from django.contrib import admin
from django.urls import path, re_path, include
urlpatterns = [
path('admin/', admin.site.urls),
re_path(r'^', include('web_app.urls')),
]
新建專案預設配置好了後臺管理路由,為了方便管理,我在app目錄下新建了一個urls.py檔案用於配置這個app內的所有路由:
from django.urls import path, re_path from web_app import views # app url 配置 urlpatterns = [ re_path(r'^$', views.index), ]
在app內的views.py檔案中寫一個index處理函式:
from django.shortcuts import render, HttpResponse
def index(request):
return HttpResponse('你好')
記得在專案目錄下的settings.py檔案內新增建立的app:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'web_app', ]
前面我們用manage命令建立了一個app,現在需要用manage命令開啟web服務:
python manage.py runserver
python manage.py runserver 0.0.0.0:8000
上面任選一個命令執行即可,預設埠8000,如果該埠被佔用,用下面的命令自行配置埠。
目前還沒有資料庫,後臺管理,後面的文章會繼續完善,補充一個Django目錄檔案簡單說明:
urls.py
網址入口,關聯到對應的views.py中的一個函式,訪問網址就對應一個函式。
views.py
處理使用者發出的請求,從urls.py中對應過來,通過渲染templates中的網頁可以將顯示內容輸出到網頁。
models.py
與資料庫操作相關,存入或讀取資料時用到這個,當然用不到資料庫的時候,你可以不使用。
admin.py
後臺,可以用很少量的程式碼就擁有一個強大的後臺。
settings.py
Django的設定,配置檔案,比如DEBUG的開關,靜態檔案的位置等。