淺談Python之Django
工具版本
python版本:3.8 django版本:2.0.0 mysql版本: 5.5.53 pip3
創(chuàng)建工程djangostart
Django-admin startproject djangostart

創(chuàng)建項(xiàng)目message
從day17目錄下執(zhí)行命令
cd djangostart
Django-admin startapp message
創(chuàng)建一些輔助目錄
創(chuàng)建log目錄 – 記錄日志的目錄
創(chuàng)建media目錄 --上傳的文件
創(chuàng)建static目錄 – 放css、image、js文件
創(chuàng)建templates目錄 – 放靜態(tài)文件

連接數(shù)據(jù)庫(kù)(保證自己的數(shù)據(jù)庫(kù)已啟動(dòng))
進(jìn)入setting.py文件,修改DATABASES
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # mysql類(lèi)型
'NAME': 'testdjango', #數(shù)據(jù)庫(kù)名稱(chēng)
'USER': 'root', # 賬號(hào)
'PASSWORD': 'root', # 密碼
'HOST': '127.0.0.1' # host
}
}
重新運(yùn)行python manage.py runserver 0.0.0.0:8888,出現(xiàn)錯(cuò)誤No module named ‘MySQLdb'

pip3 install mysqlclient
python manage.py runserver 0.0.0.0:8888,成功
生成數(shù)據(jù)表
python manage.py makemigrations
python manage.py migrate

原因是:django版本跟數(shù)據(jù)庫(kù)版本不對(duì)應(yīng),Django2.1不再支持MySQL5.5,必須5.6版本以上
phpStudy查看當(dāng)前使用的MySQL的版本 1、打開(kāi)面板 2、其他選項(xiàng)菜單 3、MySQL工具 4、MySQL命令行 5、運(yùn)行select version();命令
django版本查看 import django django.version
解決辦法:
二選一
(1)Django降級(jí)到2.0(我選擇的是這種)
pip3 install Django==2.0.0 -i https://pypi.douban.com/simple
(2)MySQL升級(jí)
參考:http://www.cnblogs.com/yebaofang/p/9863678.html
訪(fǎng)問(wèn)form.html
在message目錄下的views.py文件中定義視圖函數(shù)get_form
def getform(request):
return render(request,'message_form.html')
在djangostart目錄下的urls.py文件中定義路由
from django.contrib import admin
from django.urls import path
from django.conf.urls import url
from message import views as message_views
urlpatterns = [
path(r'^admin/', admin.site.urls),
url(r'^form/$',message_views.getform)
]
在templates目錄下創(chuàng)建message_form.html文件

重啟服務(wù)器:python manage.py runserver 0.0.0.0:8888
訪(fǎng)問(wèn)127.0.0.0:8888/form/ (自己的端口號(hào))

修改djangostart目錄下的setting.py文件中的TEMPLATES中的DIR
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [BASE_DIR+"/templates",], # 修改位置
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
在setting.py文件中修改static目錄,這樣才能正確 的引入css、js、img等文件
STATICFILES_DIRS = [
os.path.join(BASE_DIR,'static')
]

總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Python運(yùn)算符重載的簡(jiǎn)單實(shí)例代碼
什么是運(yùn)算符重載,就是讓自定義的類(lèi)生成的對(duì)象(實(shí)例)能夠使用運(yùn)算符進(jìn)行操作,這篇文章主要給大家介紹了關(guān)于Python運(yùn)算符重載的相關(guān)資料,需要的朋友可以參考下2022-01-01
使用TensorFlow實(shí)現(xiàn)簡(jiǎn)單線(xiàn)性回歸模型
這篇文章主要為大家詳細(xì)介紹了使用TensorFlow實(shí)現(xiàn)簡(jiǎn)單線(xiàn)性回歸模型,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07
Python通過(guò)樸素貝葉斯和LSTM分別實(shí)現(xiàn)新聞文本分類(lèi)
樸素貝葉斯法(Naive Bayes model)是基于貝葉斯定理與特征條件獨(dú)立假設(shè)的分類(lèi)方法。LSTM則是一種時(shí)間循環(huán)神經(jīng)網(wǎng)絡(luò),適合于處理和預(yù)測(cè)時(shí)間序列中間隔和延遲相對(duì)較長(zhǎng)的重要事件。本文將通過(guò)這兩個(gè)方法分別實(shí)現(xiàn)新聞文本分類(lèi),需要的可以參考一下2021-12-12
解決Python安裝cryptography報(bào)錯(cuò)問(wèn)題
這篇文章主要介紹了解決Python安裝cryptography報(bào)錯(cuò)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09
使用Keras中的ImageDataGenerator進(jìn)行批次讀圖方式
這篇文章主要介紹了使用Keras中的ImageDataGenerator進(jìn)行批次讀圖方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06
Python實(shí)現(xiàn)批量自動(dòng)整理文件
本文將利用Python制作一個(gè)批量自動(dòng)整理文件的小工具,可以自定義整理某一個(gè)路徑下面的所有需要被整理的文件。感興趣的小伙伴可以了解一下2022-03-03

