基本知識:
Django框架在用戶瀏覽器完成一次對服務器的訪問中Django在下圖紅圈內的起作用(注意區別javaweb裏用戶的request請求和Django裏服務器給Django程序傳入的request對象
)
ORM:Object Relational Mapping(關係對象映射)
ORM的核心思想:通過python的類操作數據庫的表
對於應關係:
python類 | 數據庫 |
---|---|
類名對應 | 數據庫中的表名 |
類屬性對應 | 數據庫表裏的字段 |
類實例對應 | 數據庫表裏的一行數據 |
話不多說現在開始~👨💻
1️⃣第一步:修改項目目錄下的 _ init _.py
import pymysql
pymysql.install_as_MySQLdb()
2️⃣第二步:修改settings.py中的“DATABASES”,配置數據庫的連接環境
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME':'DB1234', #庫名
'USER':'root',
'PASSWORD':'363316495',
'HOST':'',
'PORT':'3306'
}
}
3️⃣第三步:在blog應用目錄下的models.py中定義類進行表的創建
from django.db import models
class Student(models.Model):
# 姓名
name = models.CharField(max_length=30)
# 學號(主鍵)
no = models.CharField(max_length=30,primary_key=True)
4️⃣第四步:創建一個和setting.py的文件裏同名的數據庫然後在終端輸入:
①
python manage.py makemigrations
相當於在該app下建立 migrations目錄,並記錄下你所有的關於modes.py的改動
②
python manage.py migrate
將該改動作用到數據庫文件,比如產生table之類
Pycharm會自動創建以下兩個文件:
5️⃣第五步:爲了實現通過瀏覽器觸發數據庫的方法,在路徑裏面添加對blog應用的路徑映射(若blog沒有urls則新創一個)
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r"blog/", include("blog.urls")),
]
6️⃣第六步:在blog應用內映射觸發視圖函數
7️⃣第七步:解析從服務器傳來的request對象,並且調用數據庫插入函數
from django.http import HttpResponse
from . import models
# 第七步:解析從服務器傳來的request對象,並且調用數據庫插入函數
# 插入操作:
def insert1(request):
models.Student.objects.create(name="topus3", no="003")
models.Student.objects.create(name="topus4", no="004")
models.Student.objects.create(name="topus5", no="005")
return HttpResponse("insert")
# 查找操作:
def select1(request):
# 查找所有
stus = models.Student.objects.all()
for stu in stus:
print(stu.name,stu.no)
# 查找某個,相當於sql語句中的where
models.Student.objects.filter(no="003").values("name")
return HttpResponse("select")
# 修改操作
def update1(request):
models.Student.objects.filter(no="003").update(name="zyz")
return HttpResponse("update")
# 刪除操作
def delete1(request):
models.Student.objects.filter(no="003").delete()
return HttpResponse("delete")
8️⃣第八步:啓動Django自帶服務器
控制檯輸入:
python manage.py runserver 8000
【注】python manage.py runserver 8000
默認綁定 127.0.0.1 該IP地址
127.0.0.1 是個迴環地址
9️⃣第九步:在瀏覽器依次輸入(增刪改查)
http://127.0.0.1:8000/blog/insert/
http://127.0.0.1:8000/blog/delete/
http://127.0.0.1:8000/blog/update/
http://127.0.0.1:8000/blog/select/
前端界面返回:
此時Terminal輸出:
或者此時查看數據庫:
打開終端:(mac)
/usr/local/MySQL/bin/mysql -u root -p這裏填數據庫密碼
展示所有數據庫:
mysql> show databases;
使用某個數據庫:
use DB1234; //這裏填你自己的數據庫名
查看數據庫中某個表結構:
describe student;
當然你也可以在workbench裏查看到: