Django詳細流程

2022-07-22 20:42:13 字數 4325 閱讀 4133

我們以學生管理系統為例,講解一下django的基本操作。首先要設計一下表的結構,這裡就不多解釋

班級表結構:

表名:grades

字段:班級名稱  gname

成立時間  gdate

女生總數  ggirlnum

男生總數  gboynum

是否刪除  isdelete

學生表結構:

表名:students

字段:學生姓名  sname

學生性別  sgender

學生年齡  sage

學生簡介  scontend

所屬班級  sgrade

是否刪除  isdelete

注意:django預設使用sqlite資料庫;在 settings.py 檔案中,通過databases進行資料庫配置

配置過程:

1、安裝pymysql

2、在__init__.py檔案中寫入兩行**

1

import

pymysql

2 pymysql.install_as_mysqldb()

3、在settings.py裡通過databases配置資料庫

1 databases =

10 }

注意:在乙個專案中可以建立多個應用,每個應用負責一種業務處理

models.py   模型

views.py   檢視

新增的應用

9 ]1、在models.py檔案中定義模型,需要引入from django.db import models

注意:模型類要繼承

models.model,乙個類對應乙個表,屬性對應表的字段

2、不需要定義主鍵,在生成時自動新增,並且值會自動增加

1

from django.db import

models23

class

grades(models.model):

4 gname = models.charfield(max_length=20)

5 gdate =models.datetimefield()

6 ggirlnum =models.integerfield()

7 gboynum =models.integerfield()

8 isdelete = models.booleanfield(default=false)910

class

students(models.model):

11 sname = models.charfield(max_length=20)

12 sgender = models.booleanfield(default=true)

13 sage =models.integerfield()

14 scontend = models.charfield(max_length=20)

15 isdelete = models.booleanfield(default=false)16#

關聯外來鍵

17 sgrade = models.foreignkey("

grades

")

1、生產遷移檔案

開啟cmd終端進入專案目錄下,輸入命令:python manage.py makemigrations

在migrations目錄中生成乙個遷移檔案,此時資料庫中還沒有生成資料表。

2、執行遷移

接著輸入命令:python manage.py migrate,相當於執行sql語句建立資料表

主要針對模型進行資料的增刪改查,參考博文django對於模型的資料操作

格式:python manage.py runserver ip:port

注意:ip可以不寫,不寫的話代表本機ip

埠預設是8000

eg:python manage.py runserver

說明:這是個純python寫的輕量級web伺服器,僅僅在開發測試中使用

參考另一篇博文,django的admin站點管理

在 django 中,檢視對 web 請求進行回應;檢視就是乙個函式,在 view.py 中定義

1、定義檢視

#一般檢視的第乙個引數是request(請求體),瀏覽器給伺服器的東西稱作請求體

2、配置 url

a、修改 project 目錄下的 urls.py

#

引用 include

from django.conf.urls import

url,include

from django.contrib import

admin

urlpatterns =[

url(r

'^admin/

', admin.site.urls),

#匹配檢視需要在應用下面建立 urls.py,再在應用下的 urls.py 中匹配

url(r'

^', include('

')),

]

from django.conf.urls import

url#

. 表示在當前目錄下引入

from . import

views

urlpatterns =[

url(r'^$

', views.index),

#匹配數字結尾的 127.0.0.1:8000/100/20

# ()在正則裡表示組的概念,用於上面檢視函式的傳參

url(r'

^(\d+)/(\d+)$

', views.detail),

]

模板是html頁面,可以根據檢視中傳遞過來的資料進行填充

1、配置模板路徑

建立好 templates 目錄之後,修改 setting.py 檔案下的 templates

2、示例,查詢班級資訊  

grades.html

<

body

>

<

h1>班級資訊列表

h1>

<

ul>

<

li>

<

a href

="}"

>}

a>

li>

ul>

body

>

模板語法:}  

from .models import

grades

defgrades(request):

#去模型裡取資料

gradeslist =grades.objects.all()

#將資料傳遞給模板,模板以字典的形式接收(注意 key 要和模板命名相同),模板再將渲染好的頁面返回瀏覽器

return render(request, '

', )

from django.conf.urls import

urlfrom . import

views

urlpatterns =[

url(r'^$

', views.index),

url(r

'^grades/$

', views.grades),

]

(完結)

Django專案的搭建詳細流程

搭建最初的django專案 建立django專案 4.在settings裡配置好所需要的資料庫 5.建立static資料夾,並且在settings裡面配置好路徑,還有media資料夾 static url static 配置static和media路徑 staticfiles dirs os.pat...

MapReduce詳細流程

1.首先maptask的map方法會生成一堆 k,v 型別的資料,資料會標記好它的分割槽,然後會把這些資料傳入到記憶體的環形緩衝區當中 預設100m 2.當環形緩衝區的記憶體占用達到80 時,從記憶體緩衝區不斷溢位到本地磁碟檔案,可能會溢位多個檔案 在溢位前對資料進行快速排序,排序按照key進行字典...

教師面試詳細流程

教師資格證面試詳細流程 第一次寫面試流程,沒有寫過,就以本人當時考試說一下吧,希望大家不要介意哈,先祝大家都能通過面試,加油!我們都有自己的面試准考證,當距離考試半小時前我們進入考場,就從這裡開始寫吧 1.進場 拿著自己身份證和准考證進入學校,進入安排的教室等待,在這個教室裡,有很多和你一起考試的小...