全棧:網站設計,web前端開發,後端開發,數據庫設計,接口及組件,移動端開發,產品設計,全系統架構,產品理念及用戶體驗,理解和定義用戶需求
雲端:應用邏輯等
與應用HTTP協議,加密需求HTTPS協議,雲端需要部署Web服務器,應用數據json格式傳輸,接口採用restful風格設計,終端採用瀏覽器或app等多種形式
前端技術:HTML,CSS,JavaScript
雲端接口:JSON,AJAX,RESTful
web服務器:Apache Nginx Tomcat IIS BEA Weblogic Node.js
web框架:Django Tornado Flask Pyramid
業務邏輯:python
數據庫:mysql postgresql mongo sqlite
HTML
超文本傳輸語言,信息組織方式
標籤是預定義的瀏覽器可解析展示成web頁面內容,XML的一種實例
常用標籤:標題(h1…),段落(p),換行(br),容器(div,span),表格(tabletrtd),列表(ul,ol,li),鏈接(a),表單(input)
w3shool
CSS層疊樣式表
樣式表達
不同的風格
三種寫法
行內模式:標籤的style屬性中書寫
頁內模式:獨立的標籤style中書寫
外部模式:單獨在CSS文件中書寫
Javascript
輕量型的腳本型編程語言,爲web增加交互,動態效果和行爲功能
由瀏覽器執行訪問時會被下載到本地
可以寫在html中也可以單獨寫成文件
echarts庫數據展示
HTTP協議
基於請求和響應模式的,無狀態的應用層協議
採用url作爲定位網絡資源的表示
http:// host [:port] [path]
host:合法的internet主機域名或IP地址
port:端口號,缺省端口爲80
path:請求資源的路徑
對url位置資源的操作
GET:獲取url位置
HEAD:獲得該資源的頭部信息
POST:附加新的數據
PUT:儲存一個資源,覆蓋原有位置的資源
PATCH:改變該處資源的部分內容
DELETE:刪除url位置存儲的資源
網絡通道和服務器成了黑盒子
web服務器
軟件工具
提供HTTP HTTPS訪問服務
只需要配置
Apache Nginx
專注在那些能讓你開心的事
Django框架
pip install django
python -m django --version
理解
web框架
建設應用的半成品
WSGI:web服務器接口
路由-功能處理邏輯
Django產品級框架,採用MTV模型組織
最小程序
建立web框架工程
django-admin startproject mysite
init.py 一個將mysite定義爲包的空文件
settings 部署和配置整個工程的配置文件
urls URL路由的聲明文件
wsgi基於WSGI的web服務器的配置文件
manage一個與django工程進行交互的命令工具
django-admin
建立並管理django工程
建立並管理django數據庫
控制調試日誌信息
運行維護django工程
修改工程
調試運行
在mysite工程目錄下,python manage.py runserver
IP地址
MTV開發模式 模型 視圖 模板
模型 與數據組織相關的功能 組織和儲存數據的方法和模式與數據模型相關的操作
視圖 針對請求選取數據的功能 選取哪些數據進行展示,每個url對應一個回調函數
模板 與表現相關的所有功能 頁面展示風格和方式 與具體數據分離,用於定義表現風格
數據樣式處理
建立模板 對應特定請求 返回模板頁面
include()函數用於引用其他路由文件
將局部路由添加到全局路由
1.新建hello2app引用
2.使用 .html爲返回頁面,添加html到目錄下,修改views.py
3.在hello2app應用中,新增urls.py文件(本地路由文件
4.在全局路由文件中增加對本應用路由文件的引用
5.設置模板路徑,讓django框架找到模板所在目錄
D:\html項目\甘棠.html
雲端留言板
開發流程
1.新建工程cloudms
2.新建應用 msgapp
3.增加模板,即顯示界面的前端代碼,配置路徑
4.設定URL路由,本地路由和全局路由
5.編寫交互代碼
6.運行工程
進階
路由機制
settings.py文件中ROOT_URLCONF變量指定全局路由文件名稱
urlpatterns變量表示路由(urls.py),該變量是列表類型,由path()或re_path()作爲元素組成
path(route,view)字符串 路由 re_path處理正則表達式路由,第一個參數是正則表達式可看做字符串的模式
route:URL或URL模式,URL轉換語法
精確字符串格式,
轉換格式,一個URL模板,匹配URL同時在其中獲得一批變量作爲參數<類型:變量名>
正則表達式
一類URL
view:處理視圖函數的名稱,或include()類
處理函數和
include()函數:路徑去重,附加本地路由
url路由機制
查找全局urlpatterns變量(urls.py
按照先後順序,匹配
根據匹配結果執行對語音處理函數
如果沒有找到,進行錯誤處理
不考慮HTTP請求方式,根據URL進行路由,只要URL相同,無論是POST GET那種請求方式都指向同一個操作函數
URL根目錄的處理
path(’ ',<根目錄處理函數>),
re.path(’^$’,<根目錄處理函數>) 或者,二選一
視圖響應類型
視圖函數接受HTTP請求並返回響應,可以放在任何地方,可以是任何功能
視圖函數可以返回Web文本 頁面 重定向 錯誤 圖片等任何內容
通過HttpResponse.JsonResponse等類表達並返回響應
視圖函數放在對應app中的views.py文件中
響應類型
HttpRsponse及子類:主要反饋類型 狀態碼默認爲200
重定向302 永久重定向301 網頁無改動 304 不良響應400 禁止訪問403 不被允許405 HTTP狀態碼爲410 服務器錯誤 500 404錯誤
JsonResponse類
StreamingHttpResponse類 大文本文件傳輸
迭代器產生分段,每次傳輸一部分
FileResponse類 大二進制文件傳輸
視圖流式響應機制
一次性響應
流式響應類型
模板引擎與模板使用
模板引擎是模板響應的後端
配置 settings.py文件BACKEND
模板目錄在列表中的順序是搜索模板的順序
模板的查找
get_template(template_name)
template_name:待查找的模板的名稱
select_template(template_name_list)
template_name_list:待查找的模板的名稱
模板的渲染
Template.render(context,request)
context:字典類型
request:HTTP請求
模板語言入門
指導模板加載數據方式的工具
單行註釋{# #}
多行註釋{% comment %}
內容
{% endcomment %}
{{name}}
如果變量是字典類型,列表類型或對象,用.獲取元素
標籤
{% 關鍵字引導的程序邏輯 %}
過濾器
{% name|過濾標籤 %} {% name|f1|f1 %}
過濾器對變量的值進行修飾
主要參照視頻:中國大學mooc,北京理工大學的雲端開發