django系列二:Hello World

前言

上篇文章講解了基本的入門搭建,現在我們正式開始從一個簡單的hello world 開始。

官網入門當中講解了一些很細的知識,比如:新建一個工程時候對配置信息、資料庫配置信息等,做了一些介紹。因為涉及的知識點太多,所以先從實際操作開始,深入的知識後續再繼續深入的講解。

創建工程

創建一個工程(先簡單的認為是一個文件夾)其實很簡單執行命令

django-admin startproject myproject(工程名稱)

現在code根目錄下創建一個analysis工程,如圖:

這時候會在根目錄下生成一個 analysis的工程,進入analysis下面,來看下裡面有什麼(用vs code 打開的)。

vs code工具打開

Server服務目錄結構

analysis/

manage.py

analysis/

__init__.py

settings.py

urls.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埠上。這樣伺服器就算運行起來了。

訪問:127.0.0.1:8000/ 則會出現如下信息

證明服務端已經啟動,因為django框架默認有個/admin的模版,

因此如果訪問: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這兩個框架在設計上各方面有什麼優缺點?

TAG:Django框架 | MVC | Python |