1. 程式人生 > >Django學習(一)---基本配置及創建項目、應用

Django學習(一)---基本配置及創建項目、應用

cut 維護 onf response settings 通過 學習 clu render


安裝:在Django官網下載最新版Django然後通過pip安裝即可

一、創建項目

進入文件夾,打開cmd窗口,輸入django-admin startproject myblog(項目名)

二、創建應用

1.打開命令行,進入項目中manage.py同級目錄

2.命令行輸入:python manage.py startapp blog(應用名)

3.添加應用名到settings.py中的INSTALLED_APPS裏

三、新建視圖

編輯應用blog目錄下的views.py文件如下:

from django.shortcuts import render

# Create your views here.
from django.http import HttpResponse # 引入HttpResponse,用來向網頁返回內容 def index(request): # 定義的函數第一個參數必須是request,resquest變量裏包含了get和post方式 return HttpResponse(uHello World)

函數返回了一個 HttpResponse 對象,可以經過一些處理,最終顯示"Hello World"到網頁上。

註意:每個請求對應一個函數,函數必須返回一個響應

函數必須存在一個參數,一般約定為request

每個相應(函數)對應一個URL

四、為頁面配置URL路由

編輯項目myblog目錄下的urls.py文件如下:

from django.conf.urls import url
from django.contrib import admin
from blog import views as Hello_views

urlpatterns = [
    url(r^admin/, admin.site.urls),
    url(r^blog/$,Hello_views.index)
]

註意:每個URL都以url的形式寫出來

url函數存放在urlpatterns列表中

url函數有3個參數:URL(正則),對應方法,名稱(可省略)

啟動:通過命令行進入項目myblog同級目錄,輸入python manage.py runserver啟動,打開瀏覽器輸入url即可,默認為 http://127.0.0.1:8000/index

五、

1.創建完項目後的目錄結構為:

myblog  
├── manage.py  
└── myblog  
    ├── __init__.py  
    ├── settings.py  
    ├── urls.py  
    └── wsgi.py  

新建了一個 myblog 目錄後,其中還有一個 myblog 目錄,這個子目錄 myblog 中是一些項目的設置settings.py 文件,總的urls配置文件urls.py 以及部署服務器時用到的 wsgi.py 文件,__init__.py是python包的目錄結構必須的,與調用有關。

2.創建應用app後的目錄結構為:

blog/  
├── __init__.py  
├── admin.py  
├── models.py  
├── tests.py  
└── views.py  

3.Django中幾個項目文件的作用:

1)urls.py

網址入口,關聯到對應的views.py中的一個函數(或者generic類),訪問網址就對應一個函數。

2) models.py

數據模塊,使用ORM模塊,與數據庫操作相關,存入或讀取數據時用到這個,用不到數據庫時可以不使用。

3)forms.py

表單,用戶在瀏覽器上輸入數據提交,對數據的驗證工作以及輸入框的生成等工作,也可以不使用。

4) templates 文件夾

views.py 中的函數渲染templates中的Html模板,得到動態內容的網頁,可以用緩存來提高速度。

5) admin.py

後臺,可以用很少量的代碼就擁有一個強大的後臺。

6) settings.py

Django 的設置,配置文件,比如 DEBUG 的開關,靜態文件的位置等。

7) migrations

數據移植(遷移)模塊

8)apps.py

該應用的一些配置,自動生成的

9) test.py

自動化測試模塊,Django提供自動化測試的功能,在這裏編寫測試語句

10) views.py

執行響應的代碼所在模塊,代碼邏輯處理的主要地點,項目中大多數代碼寫在這裏

六、第二種URL配置方法

當項目比較龐大時,如果所有的url都在根urls.py中配置的話,會比較繁雜,出現命名沖突等問題,不利於維護,

所有可以在每個app中單獨配置url。

1.

在項目根目錄下的 urls.py中引入include

url方法中加入include(‘blog.urls’)

from django.conf.urls import url, include
from django.contrib import admin

urlpatterns = [
    url(r^admin/, admin.site.urls),
    url(r‘‘, include(blog.urls)),
]

2.在app目錄下創建urls.py文件 格式和根urls.py相同

import blog.views 文件

url方法加入views.test函數

from django.conf.urls import url
from blog import views as Hello_views

urlpatterns = [
    url(r^index/$, Hello_views.index),
]

註意:

根urls.py針對app配置的URL名稱,是該app所有URL的總路徑(如:上面的路徑為http://127.0.0.1:8000/index/)

即匹配的路徑為根urls.py中的正則加上app下urls.py中的正則

配置URL註意正則表達式結尾符號$和/

Django學習(一)---基本配置及創建項目、應用