您好,登錄后才能下訂單哦!
Django版本為:2.1.7
Python的web框架,MTV思想
MVC
Model(模板文件,數據庫操作) view(視圖模板文件 )controller(業務處理)
MTV
Model(模板文件,數據庫操作) template(視圖模板文件) view(業務處理)
安裝及訪問
安裝
pip3 install django
創建目錄
如win:在需要創建目錄的文件夾按住shift+鼠標右鍵打開命令行,創建dongjg工程目錄
C:\Users\東東\AppData\Local\Programs\Python\Python37\Scripts\django-admin.exe startproject dongjg
開啟服務
其中manage.py需對應工程目錄
如果網站需要外部訪問還需在工程目錄的settings.py文件中設置【ALLOWED_HOSTS = ["*"]】
python manage.py runserver 0.0.0.0:8000
訪問測試
http://127.0.0.1:8000/
目錄介紹
工程目錄結構
無APP的測試頁面
在urls.py中添加簡單的測試頁面
訪問:http://127.0.0.1:8000/dong
from django.contrib import admin from django.urls import path #新建處理方法 from django.shortcuts import HttpResponse def homex(requestx): return HttpResponse("東小東【dongxiaodong】") urlpatterns = [ path('admin/', admin.site.urls), path("dong",homex),#添加URL對應關系 ]
創建APP及基本操作
可以實現多個模塊效果,如后臺管理、用戶登入等
python manage.py startapp dongapp2
APP的目錄結構
migrations文件夾 #數據庫操作記錄(表結構修改記錄)
admin.py #Django的后臺管理頁
models.py #創建數據庫結構
apps.py #當前app的配置文件
views.py #業務代碼
tests.py #單元測試
路由對應方法(FBV):
在dongapp2/ views.py
from django.shortcuts import HttpResponse def homex(requestx): return HttpResponse("東小東【dongxiaodong】")
在urls.py
from django.contrib import admin from django.urls import path from dongapp2 import views urlpatterns = [ path('admin/', admin.site.urls), path("dong",views.homex),#添加URL對應關系 ]
路由對應類(CBV)
在dongapp2/ views.py
from django.views import View from django.shortcuts import HttpResponse from django.shortcuts import render #導入 class DongClass(View): def get(self,requestx):#當請求為get時進入 #return HttpResponse(requestx.GET.get("gdax","無數據")) return render(requestx, "loginx.html", {"dongx": 12}) # 返回文件 def post(self,requestx):#當請求為POST時進入 return HttpResponse(requestx.POST.get("user","無數據"))
在urls.py
path("cdong",views.DongClass.as_view()),
靜態文件(static)
存放一些css樣式、圖片、js代碼等
外部訪問訪問:http://127.0.0.1:8000/static/img/an.png
在setting.py中,設置靜態文件存放位置
在模板HTML文件中使用
<link rel="stylesheet" href="static/dong.css" rel="external nofollow" >
數據獲取相關
表單提交測試:
在setting.py中注釋掉下面一句,即可通過表單添加【action="dong"】進行數據提交,如果不注釋需參考CSR保護
獲取訪問數據
#控制臺輸出所有的請求信息 for k,v in requestx.environ.items(): print(k,"----->",v) print("你的設備基本信息:",requestx.environ.get("HTTP_USER_AGENT","w")) print("你的IP地址:",requestx.environ.get("REMOTE_ADDR","w")) xx=requestx.path_info #獲取url,如http://127.0.0.1:8000/x1/x2/xxxxcd3,輸出:/x1/x2/xxxxcd3 methodx = requestx.method #得到訪問方式,輸出:GET POST #userx1=requestx.POST["user"] #獲取POST值,如果name不存在會報錯 userx2=requestx.POST.get("user","xxx") #獲取POST值,如果不存在則輸出xxx
響應頭設置
# 本地頁面跳轉 from django.shortcuts import redirect # 導入 retx = redirect("dong/") # 返回文件,并匹配值 from django.shortcuts import render #導入 retx= render(requestx, "loginx.html",{"dongkk1":"替換值1","dongkk2":"替換值2"}) #返回字符串 from django.shortcuts import HttpResponse retx=HttpResponse("東小東【dongxiaodong】") #設置響應頭 retx["tttt"]="tttvvvvv" return retx
復選框測試:
獲取數據,獲取數據到一個列表中
listx=requestx.POST.getlist("boxd")
復選框
<input type="checkbox" name="boxd" value="1xx" >選項1 <input type="checkbox" name="boxd" value="xx2" >選項2 ……..
文件上傳
fileobjx=requestx.FILES.get("dongfile")#得到文件對象 filenamex=fileobjx.name#得到文件名 filesize=fileobjx.size#文件大小 f=open("static/img/"+filenamex,"wb")#創建新文件保存數據 for datax in fileobjx.chunks():#接收數據,可以不用寫.chunks(),默認會調用 f.write(datax) f.close()
總結
以上所述是小編給大家介紹的Python后臺開發Django的教程詳解(啟動),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。