Django - Hello World

創建一個全新的專案網站

#創建一個屬於 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
開啟瀏覽器,網址列輸入 http://127.0.0.1:8000/
運行結果:
終端機下按 ctrl+c 關閉伺服器運行。
這時如果使用瀏覽器,重新整理 http://127.0.0.1:8000/
運行結果:

創建一個應用 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 世界~~~")
  1. 定義編碼格式為 utf-8
  2. 匯入 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
開啟瀏覽器,網址列輸入 http://127.0.0.1:8000/
運行結果:
另外也可以設定要運行 ip或port
python manage.py runserver 0.0.0.0:8000
0.0.0.0 設定你要訪問的電腦ip位置
8000 設定你要訪問的該電腦的port

參考資料

Django 官方說明文件:Writing your first Django app, part 1

這個網誌中的熱門文章

16天記下7000單字

nano 文字編輯器

2023 最新入門零基礎 Kotlin教學【從零開始學 Kotlin 程式設計】Kotlin 教學課程目錄 (Android Kotlin, IntelliJ IDEA, Android Studio, Android APP 開發教學)

2022 最新入門零基礎 Flutter教學 【Flutter 程式設計入門實戰 30 天】Flutter 教學課程目錄 (IntelliJ IDEA 開發教學)

【從零開始學 Flutter 程式設計】SharedPreferences 設定檔資料存取