我們以學生管理系統為例,講解一下django的基本操作。首先要設計一下表的結構,這裡就不多解釋
班級表結構:
表名:grades
字段:班級名稱 gname
成立時間 gdate
女生總數 ggirlnum
男生總數 gboynum
是否刪除 isdelete
學生表結構:
表名:students
字段:學生姓名 sname
學生性別 sgender
學生年齡 sage
學生簡介 scontend
所屬班級 sgrade
是否刪除 isdelete
注意:django預設使用sqlite資料庫;在 settings.py 檔案中,通過databases進行資料庫配置
配置過程:
1、安裝pymysql
2、在__init__.py檔案中寫入兩行**
13、在settings.py裡通過databases配置資料庫import
pymysql
2 pymysql.install_as_mysqldb()
1 databases =注意:在乙個專案中可以建立多個應用,每個應用負責一種業務處理10 }
models.py 模型
views.py 檢視
新增的應用
9 ]1、在models.py檔案中定義模型,需要引入from django.db import models
注意:模型類要繼承
models.model,乙個類對應乙個表,屬性對應表的字段
2、不需要定義主鍵,在生成時自動新增,並且值會自動增加
11、生產遷移檔案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
")
開啟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模板是html頁面,可以根據檢視中傳遞過來的資料進行填充url#
. 表示在當前目錄下引入
from . import
views
urlpatterns =[
url(r'^$
', views.index),
#匹配數字結尾的 127.0.0.1:8000/100/20
# ()在正則裡表示組的概念,用於上面檢視函式的傳參
url(r'
^(\d+)/(\d+)$
', views.detail),
]
1、配置模板路徑
建立好 templates 目錄之後,修改 setting.py 檔案下的 templates
2、示例,查詢班級資訊
grades.html
<模板語法:}body
>
<
h1>班級資訊列表
h1>
<
ul>
<
li>
<
a href
="}"
>}
a>
li>
ul>
body
>
from .models importgrades
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.進場 拿著自己身份證和准考證進入學校,進入安排的教室等待,在這個教室裡,有很多和你一起考試的小...