Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)
閱讀目錄
摘要:
- Web框架概述
- Django簡介
- Django項目創建
- Django基礎必備三件套(HttpResponse、render、redirect)
一、Web框架概述:
Python三大主流Web框架:
- Django:大而全,自帶了很多功能模塊,類似于航空母艦(缺點:笨重)
- Flask:短小精悍,自帶的功能模塊特別少,大部分都是依賴于 第三方模塊(小而輕)
- Tornado:異步非阻塞, 主要用于處理高IO,多路復用的情況,可以寫游戲后端
每一種框架都包含3部分:
- a: socket
- b: 路由與視圖函數
- c: 模板渲染
Django:
- a: 用別人的 wsgiref
- b: 自己寫的
- c: 自己寫的
Flask:
- a: 用別人的 werkzeug
- b: 自己寫的
- c: 用別人的 jingja2
Tornado:
- a: 自己寫的
- b: 自己寫的
- c: 自己寫的
二、Django簡介:
djang下載:推薦下載1.11.11版本
命令行直接下載 :pip3 install django==1.11.11
pycharm下載
驗證是否下載成功:django-admin
三、創建Django項目的方式:
-
方式1(命令行創建): 創建Django項目:django-admin startproject 項目名 創建app應用:python3
manage.py startapp app01 啟動Django項目:python3 manage.py runserver
注意:用命令行創建的Django項目默認不會自動創建templates文件夾,需要自己手動創建(注意一定要將文件夾路徑添加到配置文件中)
-
方式2:(pycharm創建) FILE >>> new project 選擇第二個django
需要注意名字不能有中文,選擇本地的解釋器,勾選后臺管理 創建app pycharm命令行創建:python3 manage.py
startapp app01 Tools下面run manage task功能欄:啟動點小綠色箭頭強調:
1.用django一定要保證只有一個在運行狀態 切記切記!!!!!!!
2.一定記得清瀏覽器的緩存 -
app(應用)的概念: 一個Django項目就好比是一所大學 而app就是大學里面的學院 這里需要注意一件事:
新創建的app需要在配置文件中注冊才能生效
- Django項目文件夾結構解讀:
-
Django項目的運行: 命令行:定位到項目目錄下之后:
python3 manage.py runserver
不過一般我們都在pycharm中運行:
-
模板文件配置:(這里再提一下,前面命令行方式創建項目時候也說過)
- 靜態文件配置:
注意:
剛開始學習時可在配置文件中暫時禁用csrf中間件,方便表單提交測試。
四、Django基礎必備三件套(小白必會三板斧)
from django.shortcuts import HttpResponse, render, redirectHttpResponse
內部傳入一個字符串參數,返回給瀏覽器。
例如:
def index(request):
# 業務邏輯代碼
return HttpResponse(“OK”)
render
除request參數外還接受一個待渲染的模板文件和一個保存具體數據的字典參數。
將數據填充進模板文件,最后把結果返回給瀏覽器。(類似于我們上面用到的jinja2)
兩種給前端頁面傳值的方式:
第一種:
def reg(request):
user_dict = {‘name’:‘jason’,‘password’:‘123’}
return render(request,‘reg.html’,{‘user_dict’:user_dict})
第二種:
def reg(request):
user_dict = {‘name’:‘jason’,‘password’:‘123’}
return render(request,‘reg.html’,locals())
redirect(重定向)
接受一個URL參數,表示跳轉到指定的URL。
例如:
def index(request):# 業務邏輯代碼return redirect("/home/")總結
以上是生活随笔為你收集整理的Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python 官方推荐的一款打包工具
- 下一篇: Web框架之Django_02基本操作(