django系列二:Hello World
前言
上篇文章講解了基本的入門搭建,現在我們正式開始從一個簡單的hello world 開始。
官網入門當中講解了一些很細的知識,比如:新建一個工程時候對配置信息、資料庫配置信息等,做了一些介紹。因為涉及的知識點太多,所以先從實際操作開始,深入的知識後續再繼續深入的講解。
創建工程
創建一個工程(先簡單的認為是一個文件夾)其實很簡單執行命令
django-admin startproject myproject(工程名稱)
現在code根目錄下創建一個analysis工程,如圖:
這時候會在根目錄下生成一個 analysis的工程,進入analysis下面,來看下裡面有什麼(用vs code 打開的)。
Server服務目錄結構
analysis/
manage.py analysis/ __init__.py settings.pyurls.py
wsgi.py
django-admin命令創建完工程後,就生成了這麼一個目錄結構,讓我們看看這個文件具體是什麼。
- 最外層 analysi/ 這個就是一個文件夾,也可以手動重新命名
- manage.py:這個文件是與一些django命令行工具,想要了解更多的話可以查看官網
- 內部 analysi/ 這個就是python的一個包,也就是我們要執行的一個項目。
- analysi/__init__.py:這個文件就不做太多的介紹了
- analysi/settings.py:這個主要是對項目的一些設置信息,比如:資料庫、模版地址、server host、server port等
- analysi
/urls.py
:url的一些規則在這裡進行設置,比如:通過url可以定位到具體訪問的是哪個路由、以及參數的形式等等。 - analysi
/wsgi.py
: 可以簡單的理解為在python中,http請求與響應是通過wsgi進行處理的。Python的Web伺服器網關介面。想深入了解的話可以查看官網。
其實現在我們創建了一個項目了,而且是一個可運行的項目,那服務如何運行以及如何請求呢?執行命令:
python manage.py runserver
默認是運行在8000埠上。這樣伺服器就算運行起來了。
訪問:http://127.0.0.1:8000/ 則會出現如下信息
證明服務端已經啟動,因為django框架默認有個/admin的模版,
因此如果訪問:http://127.0.0.1:8000/admin 則會出現如下信息
上面講述了server端的啟動,好了,那下面開始處理http的請求和響應吧,開始一個Hello world 吧
第一個App
app是代表是我們自己創建的web應用,也就是現在我們要創建的Hello world。
在/code/analysis根目錄下執行命令:
python manage.py startapp app
我們會看到已經創建了一個 與 analysis 同級的web目錄,其實web目錄下主要是一個MVC的模式,mvc模式這裡就不再細說了。
Hello World Views
首先在 web/views.py 文件中,引入 django.http包中的HttpResponse模塊,然後新增一個index方法。
from django.http import HttpResponse# Create your views here.def index(request): return HttpResponse(Hello World)
在 analysis/urls.py文件中,引入web下views模塊,並配置url規則
from django.conf.urls import urlfrom web import viewsurlpatterns = [ url(r^index,views.index)]
這是通過url訪問:http://127.0.0.1:8000/index則返回內容為 「Hello world」。
基本的一個架構已經算搭建好了,然後下一步就是定義不同的views,以及配置 urls.py中的規則。
雖然Hello world實現起來很簡單,但是一個架構(雖然規模小了點)基本上已經形成了。django這套框架是很有意思的,後面再不斷的深入的過程中,會慢慢發現它的強大之處。
推薦閱讀:
※是否框架的目的是不一樣的?
※知乎後台為什麼用python?
※mongodb+django 怎麼配置?
※Django和Flask這兩個框架在設計上各方面有什麼優缺點?