目录
- web基础
- HTTP协议
- 1.四大特性
- 2.数据格式
- 3.响应状态码
- 动静态网页
- 静态网页
- 动态网页
- 模板的渲染
- HTTP协议
- python三大主流web框架(了解知识)
- django
- flask
- tornado
- Django框!架介绍
- Django版本选择:
- 命令行创建项目
- APP的概念
- pycharm创建项目
- django文件功能
- django基本配置及注意事项
- django基础三板斧
- HttpResponse 返回字符串
- render 返回html文件,可以给html页面传值
- redirect 重定向
- 重启机制
web基础
HTTP协议
1.四大特性
1.基于TCP/IP作用于应用层之上的协议
2.基于请求响应
3.无状态
cookie session token...
4.无连接
websocket长连接
2.数据格式
请求格式
请求首行
请求头
请求体
3.响应状态码
用数字表示一串语言解释
动静态网页
静态网页
数据是写死的 万年不变(哪怕改变了 也是人为直接修改)
动态网页
数据是实时获取的
eg:
1 后端代码动态获取 当前时间
2 数据是从数据库查询出来的
模板的渲染
将后端传递给html文件的数据 在后端处理好 生成一个完整的html文件的过程
注意 模板的渲染是在后端完成的 跟前端没有关系
python三大主流web框架(了解知识)
django
大而全 自带的组件和功能非常非常多 类似于航空母舰
不足之处:写小项目的时候 可能会比较笨重(大材小用)
flask
小而精 短小精悍 自带的组件和功能特别特别少 类似于游骑兵
基本全部依赖于第三方组件
不足之处:受限于第三方模块的影响比较大
如果将flask所有第三方模块加起来 能够直接盖过django
tornado
异步非阻塞 这个框架甚至可以用来开发游戏服务器
a:socket部分
b:路由匹配
c:模板语法
django:
a用的别人的wsgiref(django默认的)
b自己写的
c自己写的
flask:
a用的别人的werkzeug
b自己写的
c用的别人的jinja2
Tornado:
a,b,c都是自己写的
Django框!架介绍
Django版本选择:
不要使用最新版,推荐使用1.11.11版本
如何校验Django是否安装成功
命令行创建项目
1、创建Django项目
cmd客户端输入:django-admin startproject 项目名(例如mysite)
2、启动django项目
切换到项目文件夹下
cmd客户端输入:Python manage.py runserver(不行就试试 Python3 manage.py runserver)
3、创建应用(django支持多APP开发)
cmd客户端输入:Python3 manage.py startapp app01
注意:
1、不会自动创建tempates文件夹
2、配置文件中不会自动书写templates文件路径
APP的概念
django是一个以开发APP为主要功能的web框架
app就是application应用的意思
一个空的django本身没有任何作用,仅仅是为APP提高前期的环境配置
你可以根据功能的不同 开发多个APP
一个APP对应一个具体的功能模块
用户相关的功能——》 app
订单相关的功能——》 app
商品相关的功能——》 app
每隔app都有自己独立的功能
创建好的app需要在django配置文件中注册方可生效
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# 'app01' # 简便写法
'app01.apps.App01Config' # 最完整的写法
]
pycharm创建项目
1、创建应用的时候 可以使用简便方式
Tools >>> run manage.py task
2、一定要确保同一个端口 同一时间只能启一个django项目
3、配置文件中针对templates文件夹的路径 如果是空的需要你手动配置
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')]
,
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
settings文件中的 DEBUG = True 后期要改成False
settings文件中的 ALLOWED_HOSTS =[] 是匹配本地测试的,后期上线后要改成["*"]
django文件功能
django项目名
settings.py 暴露给用户可以配置的配置文件
urls.py 路由与视图函数的对应关系
manage.py django的入口文件
migrations 文件夹 所有数据库相关的操作记录
admin.py django admin后台管理
apps.py 注册app使用
models.py 放所有数据库有关的模型类
tests.py 测试文件
views.py 处理业务逻辑的视图函数
django基本配置及注意事项
1、计算机名称不能含中文
2、python解释器不要使用3.7版本,推荐使用版本3.4—3.6
3、一个pycharm窗口只能跑一个项目
django基础三板斧
HttpResponse 返回字符串
render 返回html文件,可以给html页面传值
def login(request):
user_dic = {'username':'jason','password':'123'}
return render(request,'login.html',{'xxx':user_dic})
redirect 重定向
1、直接写本网站的路径后缀
2、也可也写 全路径
def home(request):
# return redirect('/login') # 重定向
return redirect('https://www.baidu.com') # 重定向
注意
django默认是自动重启的
重启机制
内有检测机制,实时检测所有文件的变化
有时候你代码还没写完,就自动重启,会出现报错的情况,这个不用管,等代码写完后,手动重启