Django+mysql配置與簡單操作數(shù)據(jù)庫實(shí)例代碼
第一步:下載mysql驅(qū)動
cmd進(jìn)入創(chuàng)建好的django項(xiàng)目目錄:使用命令
pip install mysqlclient
等待安裝成功!
第二步:在settings.py中配置mysql連接參數(shù)(沒有mysql的先裝mysql)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '數(shù)據(jù)庫名(你得先在mysql中創(chuàng)建數(shù)據(jù)庫)',
'USER':'mysql用戶名(如root)',
'PASSWORD':'密碼(如123456789)',
'HOST':'域名(127.0.0.1或localhost)',
'PORT':'端口號(3306)',
}
}
第三步:在models.py中創(chuàng)建model類
from django.db import models # Create your models here. 類似于MVC架構(gòu)中的Model class Article(models.Model): title = models.CharField(max_length=60,default='title') content = models.TextField(null=True)
第四步:根據(jù)model類創(chuàng)建數(shù)據(jù)庫表
1、cmd進(jìn)入django項(xiàng)目路徑下
2、Python manage.py migrate #創(chuàng)建表結(jié)構(gòu),非model類的其他表,django所需要的
3、python manage.py makemigrations app名 #做數(shù)據(jù)遷移的準(zhǔn)備
如:python manage.py makemigrations myblog myblog是我項(xiàng)目中的app名字
4、python manage.py migrate # 執(zhí)行遷移,創(chuàng)建medel表結(jié)構(gòu)
第五步:開始寫代碼吧
首先說下需求,就是在代碼里向MySQL中插入一條記錄并顯示到頁面
1、在templates下新建一個(gè)模板,其實(shí)就是頁面,如index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h2> {{article.title}}</h2>
內(nèi)容:{{ article.content }}
</body>
</html>
使用{{ }}在頁面進(jìn)行數(shù)據(jù)顯示,這里看下就明白
2、配置URL
1、在項(xiàng)目下的urls.py(注意是項(xiàng)目下的urls.py)配置url映射:
from django.conf.urls import url,include
from django.contrib import admin
#根url配置
urlpatterns = [
#url(頁面正則,響應(yīng)的方法名稱)
url(r'^admin/', admin.site.urls),
url(r'^myblog/',include('myblog.urls')),
]
這里注意有一個(gè)include('myblog.urls')是我們接下來要配置的二級url,在app下的urls.py中配置
from django.conf.urls import url from django.contrib import admin from . import views urlpatterns = [ #url(頁面正則,響應(yīng)的方法名稱) ^index$:表示要以index開始和結(jié)束,正則約束 url(r'^index/$',views.index), ]
現(xiàn)在一個(gè)路徑為'localhost:8000/myblog/index/'的訪問路徑就配好了,url(r'^index/$',views.index)就表示最終/myblog/index/這個(gè)路徑由views.py中的index方法來響應(yīng)。
3、寫響應(yīng)函數(shù):如像數(shù)據(jù)中插入一個(gè)數(shù)據(jù),并顯示在頁面上
from django.shortcuts import render
from django.http import HttpResponse
from myblog.models import Article
# Create your views here.
def index(request):
article = Article(title='標(biāo)題',content='內(nèi)容!')
article.save()
return render(request,'index.html',{'article':article}
第六步:運(yùn)行項(xiàng)目
我這里使用的pycharm,點(diǎn)擊運(yùn)行按鈕即可,沒有pycharm的可使用:
python manage.py runserver
來開啟服務(wù)器,然后咋瀏覽器輸入http://localhost:8000/myblog/index/, 打完收工!
以上所述是小編給大家介紹的Django+mysql配置與簡單操作數(shù)據(jù)庫實(shí)例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- django執(zhí)行原生SQL查詢的實(shí)現(xiàn)
- 在Django的模型中執(zhí)行原始SQL查詢的方法
- python Django連接MySQL數(shù)據(jù)庫做增刪改查
- Django讀取Mysql數(shù)據(jù)并顯示在前端的實(shí)例
- Django配置MySQL數(shù)據(jù)庫的完整步驟
- Django1.7+python 2.78+pycharm配置mysql數(shù)據(jù)庫教程
- Python的Django框架中使用SQLAlchemy操作數(shù)據(jù)庫的教程
- Python+Django+MySQL實(shí)現(xiàn)基于Web版的增刪改查的示例代碼
- Django重裝mysql后啟動報(bào)錯(cuò):No module named ‘MySQLdb’的解決方法
- Django使用Mysql數(shù)據(jù)庫已經(jīng)存在的數(shù)據(jù)表方法
- Linux下安裝Python3和django并配置mysql作為django默認(rèn)服務(wù)器方法
- Django使用原生SQL查詢數(shù)據(jù)庫詳解
相關(guān)文章
mysql 5.7.9 winx64在windows上安裝遇到的問題
mysql5.7.9版本以上在windwos上安裝時(shí)會遇到無法啟動但是沒有任何報(bào)錯(cuò)的問題,怎么回事呢?接下來通過本文給大家介紹mysql 5.7.9 winx64在windows上安裝遇到的問題及解決方法,需要的朋友可以參考下2016-10-10
MySql數(shù)據(jù)庫單表查詢與多表連接查詢效率對比
在遇到數(shù)據(jù)之間的聯(lián)系很復(fù)雜,建表就很糾結(jié),到底該怎么去處理這些復(fù)雜的數(shù)據(jù)呢,是單表查詢,然后在業(yè)務(wù)層去處理數(shù)據(jù)間的關(guān)系,還是直接通過多表連接查詢來處理數(shù)據(jù)關(guān)系呢2021-09-09
mysql中如何查詢多個(gè)表中的數(shù)據(jù)量
這篇文章主要介紹了mysql中如何查詢多個(gè)表中的數(shù)據(jù)量問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
mysql 數(shù)據(jù)類型轉(zhuǎn)換的實(shí)現(xiàn)
這篇文章主要介紹了mysql 數(shù)據(jù)類型轉(zhuǎn)換的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
mysql性能優(yōu)化腳本mysqltuner.pl使用介紹
無意中發(fā)現(xiàn)了,major哥們開發(fā)的一個(gè)性能分析腳本,很有意思,可以通過這個(gè)腳本學(xué)學(xué)他的思想2013-02-02
解決MySql版本問題sql_mode=only_full_group_by
這篇文章主要介紹了解決MySql版本問題sql_mode=only_full_group_by,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11

