Django框架簡介——Django建立方式、django主要文件介紹、三板斧(HttpResponse,render,redirect)

python三大主流框架html

1.Django:大而全 自帶的功能特別特別多 就相似於航空母艦 有時候過於笨重
2.Flask:短小精悍 自帶的功能特別特別少 全都是依賴於第三方組件
flask框架第三方的組件特別多 若是把flask第三方所有加起來 徹底能夠蓋過Django
比較受限於第三方的開發者
3.Tornado:天生的異步非阻塞框架 速度特別快 可以抗住高併發
能夠開發遊戲服務器前端

 

A:socket
B:路由與視圖函數匹配
C:模板語法

Django
A:用的別人的 wsgiref
B:本身寫的
C:本身寫的
Flask
A:用的別人的 wsgiref>>> werkzeug
B:本身寫的
C:用的別人的 jinja2
Tornado
A,B,C全都是本身寫的python

流程圖nginx

Django數據庫

注意事項:django

一、你的計算機的名稱不能有中文flask

二、文件的命名儘可能也不要中文瀏覽器

三、一個pycharm窗口只能有一個項目 不要把多個項目放在一個窗口下服務器

版本問題: 以django1.11版本爲主併發

下載命令:pip  install django==1.11.11

檢測是否下載成功:命令行 django-admin

如何建立django項目:(兩種方法)

  方式一命令行:在cmd中建立敲命令行

    1.建立django項目:django-admin startproject  項目名

    2.建立app應用: django_admin startapp 應用名  或者  python manager.py startapp應用名

    3.啓動django項目:python manager.py runserver(在pycharm的Terminal中輸入)

  方式二在pycharm建立:

    1.建立項目:FILE >>> new project 選擇第二個django 須要注意名字不能有中文,選擇本地的解釋器,勾選後臺管理

    2.建立app:除了命令行建立,還能夠在Tools下面Run manage task功能欄,而後在輸入  startapp  應用名

    3.能夠直接輸入runserver 或者 點擊綠色小箭頭

 

 

 

注意:用命令行建立django項目,不會自動新建templates模板文件夾,須要你手動建立,而且須要你本身settings.py文件中註冊該文件路徑。(******)     

注意:建立的應用app必定要在settings中註冊才能生效,不然沒法識別(******)

 django主要文件介紹

  項目名文件

    同名的項目文件夾

      settings.py   django暴露給用戶可配置的文件

      urls.py    路由與視圖函數對應的關係

    manage.py      django入口文件

    templates文件夾      放前端模板代碼

    應用文件夾(app)

      migrations文件夾    數據庫遷移記錄

      admin.py   django後臺管理

      apps.py     應用註冊相關

      models.py   orm模型類

      tests.py    測試文件

      views.py   視圖函數

django必會三板斧:(在views.py中)  request是請求的相關數據(******)

1.HttpResponse:內部傳入一個字符串參數,返回給瀏覽器
2.render:除request參數外還接受一個帶渲染的模板文件和一個保存具體數據的字典參數。將數據填充進模板文件,最後把結果返回給瀏覽器。

兩種給前端頁面傳值的方式:
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())               #locals()是把全部參數所有傳遞給前端

3.redirect:重定向(接收一個url參數,表示跳轉到指定的url)

 

 

 

在瀏覽器和wsgi之間還有個nginx,作負載均衡 

相關文章
相關標籤/搜索