Django - Hello World
![](https://i.imgur.com/8iVeLMx.jpg)
創建一個全新的專案網站
#創建一個屬於 Django 的工作目錄環境
mkdir django_workspace
cd django_workspace
# demohello 是我們定義的專案名稱
django-admin startproject demohello
執行命令後,新建了一個 demohello 目錄,其中還有一個 demohello 目錄結構,如下方所示:
# demohello 是一個專案的名稱
demohello
├── manage.py
└── demohello
├── __init__.py
├── settings.py
├── urls.py
└── wsgi.py
Django 目錄說明
- manage.py
Django 命令工具,如:新增一個應用服務、運行Server。 - settings.py
設定 Django 專案參數文件。 - urls.py
設定網址將關聯對應到哪個views.py中的一個函數。 - views.py
從urls.py中對應過來,處理用戶發出的請求, 透過渲染 templates 中的網頁,呈現網頁內容。 - models.py
設定資料庫操作相關,讀寫資料庫將會用到。 - admin.py
後台,可以用很少量的程式碼就擁有一個快速的後台。且可以快速新增修改與瀏覽資料庫內容。
運行 Server
python manage.py runserver
終端機下按 ctrl+c 關閉伺服器運行。
創建一個應用 APP
# hello 是一個應用程式的名稱
python manage.py startapp hello
hello 目錄結構
hello/
├── __init__.py
├── admin.py
├── models.py
├── tests.py
└── views.py
定義在此專案中新增了一個應用 APP
目前我們新增了一個應用,需定義到 settings.py裡的INSTALL_APPS 中,demohello/demohello/settings.py
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'hello',
)
定義顯示畫面內容
在 hello 這個目錄中,修改 views.py
#coding:utf-8
from django.http import HttpResponse
def index(request):
return HttpResponse(u"哈囉!歡迎來到Django 世界~~~")
- 定義編碼格式為 utf-8
- 匯入 HttpResponse,它是用來向網頁返回內容的,就像Python中的print 一樣,只不過HttpResponse 是把內容顯示到網頁上。
4~5.定義網址要求index 函數下,會回傳 HttpResponse內的字串資料
定義畫面的URL網址
from django.conf.urls import url
from django.contrib import admin
from hello import views as hello_views #加入此行
urlpatterns = [
url(r'^$', hello_views.index), #加入此行
url(r'^admin/', admin.site.urls),
]
運行
python manage.py runserver
另外也可以設定要運行 ip或port
python manage.py runserver 0.0.0.0:8000
python manage.py runserver 0.0.0.0:8000
0.0.0.0 設定你要訪問的電腦ip位置
8000 設定你要訪問的該電腦的port
8000 設定你要訪問的該電腦的port
參考資料
Django 官方說明文件:Writing your first Django app, part 1