成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

手把手教你使用Django如何連接MySQL

數(shù)據(jù)庫 MySQL
這次咱們來簡述一下,Django如何連接Mysql。這種數(shù)據(jù)庫好處是方便,不需要遠(yuǎn)程連接,打包項(xiàng)目挪到其他電腦上安裝一下依賴一會(huì)就跑起來了。

[[376891]]

前言

這次咱們來簡述一下,Django如何連接Mysql。

默認(rèn)情況下,Django連接的是自己帶的sqlite數(shù)據(jù)庫。

 

這種數(shù)據(jù)庫好處是方便,不需要遠(yuǎn)程連接,打包項(xiàng)目挪到其他電腦上安裝一下依賴一會(huì)就跑起來了。

但是缺點(diǎn)就是,可能會(huì)出現(xiàn)各種莫名其面的問題,所以,盡可能在開始的時(shí)候,就配置上連接Mysql。

連接Mysql

Django連接Mysql分三步

  • Mysql提前創(chuàng)建好數(shù)據(jù)庫。
  • 修改Django的settings.py文件。
  • 修改項(xiàng)目文件夾下的__init.py文件。

1.Mysql提前創(chuàng)建好數(shù)據(jù)庫

首先,我使用的是本機(jī)的Mysq,并且我在Mysq上創(chuàng)建了一個(gè)school數(shù)據(jù)庫。

 

2.修改Django的settings.py文件

創(chuàng)建一個(gè)Django項(xiàng)目,在項(xiàng)目文件夾下的settings.py下,找到原來的sqlite配置文件。

注銷或刪除sqlite配置,添加以下配置。

 

復(fù)制以下代碼

  1. DATABASES = { 
  2.     'default': { 
  3.         'ENGINE''django.db.backends.mysql',  # 默認(rèn) 
  4.         'NAME''school',  # 連接的數(shù)據(jù)庫 
  5.         'HOST''127.0.0.1',  # mysql的ip地址 
  6.         'PORT': 3306,  # mysql的端口 
  7.         'USER''root',  # mysql的用戶名 
  8.         'PASSWORD''rootroot'  # mysql的密碼 
  9.     } 

3.修改項(xiàng)目文件夾下的__init.py文件

由于配置了Mysql,所以要替換默認(rèn)的數(shù)據(jù)庫引擎,在項(xiàng)目文件夾下的__init__.py,添加以下內(nèi)容。

 

復(fù)制以下代碼

  1. import pymysql 
  2.  
  3. pymysql.install_as_MySQLdb() 

如果沒有安裝pymysql,記得安裝一下,命令:pip install pymysql。

遷移數(shù)據(jù)庫

如果上述都沒問題了,那我們來寫個(gè)小Demo來跑一下試試。

遷移數(shù)據(jù)庫流程。

  • 創(chuàng)建app(Django必須依賴app才能創(chuàng)建表)。
  • settings.py中添加創(chuàng)建的app。
  • 遷移。

1.創(chuàng)建app(Django必須依賴app才能創(chuàng)建表)

首先呢,我們需要在Django中,創(chuàng)建一個(gè)app。命令如下:

python manage.py startapp web

 

2. settings.py中添加創(chuàng)建的app

創(chuàng)建完之后,我們需要在settings.py中配置一下剛剛創(chuàng)建的app。

 

3.遷移

然后執(zhí)行命令,遷移數(shù)據(jù)庫到Mysql。

  1. python manage.py makemigrations 
  2. python manage.py migrate 

 

生成的表。

 

會(huì)生成很多其他表,不用管他,只要咱們要的。

我這里直接手動(dòng)向剛剛創(chuàng)建的表里面添加一些數(shù)據(jù)。

 

展示內(nèi)容

展示內(nèi)容大概分為以下幾個(gè)部分。

  • 編寫url。
  • 編寫視圖(views)。
  • 編寫html(templates)。
  • 啟動(dòng)web。

1.編寫url

  1. urls.py 

  1. urlpatterns = [ 
  2.     path('admin/', admin.site.urls), 
  3.     path('student_list', views.student_list), 

2.編寫視圖(views)

  1. web/views.py 

  1. def student_list(request): 
  2.     student_queryset = models.Student.objects.all() 
  3.     return render(request,"student.html",{"student_queryset":student_queryset}) 

3.編寫html(templates)

  1. templates/student.html 
  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4.     <meta charset="UTF-8"
  5.     <title>Title</title> 
  6. </head> 
  7. <body> 
  8. <table border="1"
  9.     <thead> 
  10.     <tr> 
  11.         <td>id</td> 
  12.         <td>姓名</td> 
  13.         <td>年齡</td> 
  14.         <td>性別</td> 
  15.         <td>年紀(jì)</td> 
  16.     </tr> 
  17.     </thead> 
  18.     <tbody> 
  19.     {% for student in student_queryset %} 
  20.         <tr> 
  21.             <td>{{ student.id }}</td> 
  22.             <td>{{ student.name }}</td> 
  23.             <td>{{ student.age }}</td> 
  24.             <td>{{ student.gender }}</td> 
  25.             <td>{{ student.grade }}</td> 
  26.         </tr> 
  27.     {% endfor %} 
  28.  
  29.     </tbody> 
  30. </table
  31. </body> 
  32. </html> 
id 姓名 年齡 性別 年紀(jì)
{{ student.id }} {{ student.name }} {{ student.age }} {{ student.gender }} {{ student.grade }}

4.啟動(dòng)web

命令

  1. python manage.py runserver 127.0.0.1:8000 

 

打開游覽器,輸入http://127.0.0.1:8000/student_list

如圖所示!

 

總結(jié)

本次主要講述的是Django如何連接Mysql。并且順帶的做了一個(gè)測試小Demo,展示一個(gè)web是如何運(yùn)行起來的。如果基礎(chǔ)不好,我相信后面這些還是很有用的。

pymysql的版本不建議安裝太高,我的是pymysql版本是0.9.2,Django版本是2.1.5。

 

如果你覺得文章還可以,記得點(diǎn)贊留言支持我們哈。感謝你的閱讀,有問題請(qǐng)記得在下方留言噢~

本文轉(zhuǎn)載自微信公眾號(hào)「Python爬蟲與數(shù)據(jù)挖掘」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系Python爬蟲與數(shù)據(jù)挖掘公眾號(hào)。

 

責(zé)任編輯:武曉燕 來源: Python爬蟲與數(shù)據(jù)挖掘
相關(guān)推薦

2022-12-07 08:42:35

2021-07-14 09:00:00

JavaFX開發(fā)應(yīng)用

2025-05-07 00:31:30

2022-07-27 08:16:22

搜索引擎Lucene

2021-02-04 09:00:57

SQLDjango原生

2020-08-12 09:07:53

Python開發(fā)爬蟲

2021-08-02 07:35:19

Nacos配置中心namespace

2021-07-01 09:31:50

MySQL SQL 語句數(shù)據(jù)庫

2011-01-10 14:41:26

2011-05-03 15:59:00

黑盒打印機(jī)

2020-04-14 10:20:12

MySQL數(shù)據(jù)庫死鎖

2024-10-16 11:40:47

2022-07-22 12:45:39

GNU

2022-10-30 10:31:42

i2ccpuftrace

2020-05-15 08:07:33

JWT登錄單點(diǎn)

2021-03-12 10:01:24

JavaScript 前端表單驗(yàn)證

2021-12-15 08:49:21

gpio 子系統(tǒng)pinctrl 子系統(tǒng)API

2014-08-08 13:22:54

測試手機(jī)站點(diǎn)移動(dòng)設(shè)備

2022-06-06 08:50:40

CIOIT轉(zhuǎn)型

2011-04-21 10:32:44

MySQL雙機(jī)同步
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 精品1区2区3区4区 | 国产精品99久久久久久久久久久久 | 国产农村妇女精品一二区 | 亚洲伊人久久综合 | 天天摸天天干 | 国产精品一区二区三区四区 | 99在线视频观看 | 亚洲一区二区三区免费视频 | 美女逼网站 | 国产欧美日韩视频 | 婷婷中文在线 | 色本道| 欧美一区二区三区视频 | 亚洲综合国产精品 | 国产日韩精品一区二区三区 | 成人在线观看免费爱爱 | 成人免费一区二区三区视频网站 | 国产精品久久久久久久久久久久午夜片 | 免费午夜电影 | 欧美电影在线 | 成人黄视频在线观看 | 一级毛片成人免费看a | 免费大黄视频 | 久草色播 | 中文字幕成人av | 国产欧美一区二区三区另类精品 | 91精品国产91久久久久久吃药 | 国产欧美视频一区二区 | 精品欧美在线观看 | 国产一区不卡 | 国产成人99久久亚洲综合精品 | 亚洲精品久久久一区二区三区 | 国产精品黄 | 欧美二区三区 | 久久久精品视频一区二区三区 | 国产中的精品av涩差av | 欧美日韩不卡在线 | 亚洲人成在线播放 | 最新超碰 | 国产一区二区三区四区hd | 毛片a级 |