全栈:网站设计,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,北京理工大学的云端开发