- 博客(61)
- 资源 (1)
- 收藏
- 关注
原创 Flask项目(4)
1.gitflow工作流gitflow工作流,指的是使用git工具的工作流程和方式.分支管理策略:项目存在两个长期分支master: 主分支用于存放对外发布的版本,任何时候在这个分支拿到的,都是稳定的分布版develop: 开发分支(dev)用于日常开发,存放最新的开发版.项目存在三种短期分支。功能分支(feature branch)补丁分支(hot...
2019-09-26 22:40:14 454
原创 Flask项目(3)
1.关联子查询-primaryjoin目标:可以直接使用primaryjoin指明关联条件文件: d01_primaryjoin.py除了可以使用ForeignKey的方式之外,还可以直接使用primaryjoin使用方式:# primaryjoin='用户表.id==foreign(关系表.user_id)'followings = db.relationship('...
2019-09-26 22:38:47 344
原创 Flask项目(2)
1.产品介绍目标:对产品有一个基本的认识产品名称:黑马头条对标竞品:今日头条客户端:1.用户端:android, ios, 移动web作用: 主要用于阅读文章2.自媒体端:移动web作用: 自媒体人编辑、发布文章3.管理后台:pc web作用:进行用户管理、文章审核及管理、评论管理备注:项目课程主要讲解的是用户端的后端代码逻辑,所以后面的技术方案都是...
2019-09-26 22:37:54 388
原创 Flask项目(1)
16.项目课程介绍目标:知道项目课程会涉及到的那些技术方案项目课程中涉及到的技术: 数据库方案 Gitflow工作流 认证方案 对象存储 缓存方案 RPC方案 搜索方案 即时通讯方案 APScheduler定时任务 supervisor进程管理备注: 每个技术方案基本上都需要1天的时间学习,所以我们这个阶段的学习是以解决方案学习为重点,项目中的业...
2019-09-26 22:36:47 161
原创 内置函数 - getattr()函数
python getattr()函数目标:获取一个属性的值获取一个方法描述:getattr()函数用于返回一个对象属性或方法语法:getattr(object, name [, default])参数:object – 对象name – 对象属性(字符串)default – 默认返回值(可选), 不提供该参数则报错, 错误类型为AttributeError实例1:...
2019-09-25 21:26:13 1953
原创 设计模式中,MVC模式与MVT模式的区别
1.MVC模式有一种程序设计模式叫MVC,其核心思想是分工、解耦,让不同的代码块之间降低耦合,增强代码的可扩展性和可移植性,实现向后兼容。MVC的全拼为Model-View-Controller,最早由TrygveReenskaug在1978年提出,是施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语言Smalltalk发明的一种软件设计模式,是为了将传统的输入(inp...
2019-09-25 21:08:31 1418
原创 cookie与session的区别
1.状态保持http协议是无状态的。下一次去访问一个页面时并不知道上一次f对这个页面做了什么。cookie/session的出现就是为了解决http协议无状态的弊端,让客户端和服务端建立长久的联系。2.Cookiecookie是由服务器生成,存储在浏览器端的一小段文本信息。cookie的特点:以键值对方式进行存储。通过浏览器访问一个网站时,会将浏览器存储的跟网站相关的所有cook...
2019-09-25 20:49:03 126
原创 web应用模式中,前后端不分离与前后端分离的区别
1 前后端不分离:描述:在前后端不分离的应用模式中,前端页面看到的效果都是由后端控制的,由后端渲染页面或重定向到其他页面,也就是后端需要控制前端的展示,这会导致前后端的耦合度很高。适用不分离的模式比较适合纯网页应用。当对接app时,app可能并不需要后端但会一个HTML页面,而仅仅是数据本身,所以后端原本返回网页的接口不在适用于前端app应用,为了对接app,后端还需要再开发一套接...
2019-09-25 20:21:42 1202
原创 json数据解析中,dumps和loads的区别
1.json数据解析json.dumps(): 对数据进行编码(可以将字典转为json字符串)json.loads(): 对数据进行解码(反之)2.代码演示import json# 1.编码:将字典类型转为json对象data1 = { 'name': 'laowang', 'age': 17}json_str = json.dumps(data1)pri...
2019-09-25 20:12:37 266
原创 Flask复习
复习第一天:import jsonfrom flask import Flask, Blueprint, requestfrom werkzeug.routing import BaseConverterdef create_app(config): app = Flask(__name__, static_folder='static', static_url_path='/...
2019-09-25 15:53:52 190
原创 单词记忆法,由遗忘曲线制定而成
遗忘曲线由德国心理学家艾宾浩斯(H.Ebbinghaus)研究发现,描述了人类大脑对新事物遗忘的规律。人体大脑对新事物遗忘的循序渐进的直观描述,人们可以从遗忘曲线中掌握遗忘规律并加以利用,从而提升自我记忆能力。该曲线对人类记忆认知研究产生了重大影响。
2019-09-22 11:59:57 355
原创 Flask(6)- Flask-RESTful
8.Flask-RESTful的第一个程序目标:可以使用flask-restful扩展编写视图类作用: flask-restful是用于快速构建REST API的Flask扩展文件: d08_rest_first.py安装pip install flask-restful使用步骤1.导入Resourse, Apifrom flask_restful imp...
2019-09-21 18:54:41 551
原创 Flask(5)- 请求钩子与上下文
3.abort的使用目标:可以使用abort抛出http状态码异常文件: d03_abort.py作用: 抛出异常http状态码使用:# abort(http错误状态码) 4XX 5XXabort(404)4.异常捕获处理目标:可以使用errorhandler捕获异常文件: d04_errorhandler.py使用格式@app.errorh...
2019-09-21 18:52:11 154
原创 Flask(4)- 请求与响应
16.url路径参数获取目标:知道如何获取路径参数获取的url参数,获取的是最后一个/-? 之间的字符串转换器语法: <>@app.route('/<user_id>')def index(user_id): return 'user_id is %s' %(user_id)17.系统常用的转换器d11_system_conver...
2019-09-21 18:49:41 153
原创 Flask(3)- 路由与蓝图
10.Flask查询路由的方式在flask中,使用app.url_map存放所有的路由信息d05_url_map.py1.直接打印url_mapprint(app.url_map)2.使用flask routes(先执行命令:export FLASK_APP=app所在模块)flask routes3.自定义一个接口,返回所有路由信息@app.route('...
2019-09-21 18:47:11 382
原创 Flask(2)- 工程搭建
1.虚拟环境安装主要是用来解决相同库,不同版本的问题。1.创建虚拟环境 mkvirtualenv -p python3 flask_142.切换虚拟环境 workon flask_143.退出虚拟环境 deactivate4.删除虚拟环境 rmvirtualenv flask_145.导出所有第三方包的信息 pip freeze > requirements.txt...
2019-09-21 18:45:46 156
原创 Flask(1)- 介绍
1.Flask介绍为什么要学习flask框架?市场的原因在众多的python web框架中,flask和django大概占比90%, flask 大概占比是47%,所以学习flask还是非常有必要。学习的原因学习flask框架,大概需要两天的时间,学习时间少,所以学习flask性价比是非常高的。Django和flask对比Django: 重量级的框架,它提供了非常...
2019-09-21 18:44:51 226
原创 DRF(4)- restful案例
1. restful案例(了解)目的: 可以使用restful设计风格对书籍进行增删改查操作案例:操作请求方式请求路径状态码查询所有书籍GET/books200增加书籍POST/books201查询单本书籍GET/books/pk200修改单本书籍PUT/books/pk201删除单本书籍DELETE/boo...
2019-09-19 15:40:31 194
原创 DRF(1)- 简介
1. Django REST framework 简介在序列化与反序列化时,虽然操作的数据不尽相同,但是执行的过程却是相似的,也就是说这部分代码是可以复用简化编写的。在开发REST API的视图中,虽然每个视图具体操作的数据不同,但增、删、改、查的实现流程基本套路化,所以这部分代码也是可以复用简化编写的:增:校验请求数据 -> 执行反序列化过程 -> 保存数据库 -...
2019-09-19 15:35:51 213
原创 DRF(8)- 路由
3,路由router目的: 可以为标准的列表视图,详情视图,自动补充生成路由的方法操作流程:1, 路由#1,创建路由对象from rest_framework.routers import DefaultRouter,SimpleRouterrouter = SimpleRouter()#2,添加参考的视图集router.register(prefix=r'boo...
2019-09-19 15:16:50 177
原创 DRF(6)- 序列化器之反序列化
1,反序列化-字段类型校验目的: 能够使用字段类型对数据进行校验操作流程:1, 类视图(booktest/views.py)#===========4,反序列化-字段类型校验===========from booktest.serializers import BookSerializer#1,准备数据book_dict = { "btitle":"金瓶x"...
2019-09-19 15:12:45 235
原创 DRF(5)- 序列化器之序列化
1, DRF魅力展示(了解)目的: 了解drf的魅力,使用流程操作流程:1, 安装django-restframework, 注册#安装pip install djangorestframework#注册INSTALLED_APPS = [ ... 'rest_framework',]2, 路由from django.conf.u...
2019-09-19 15:06:28 181
原创 docker常用操作命令
1,搜索hello-world镜像docker search hello-world2,下载hello-world镜像docker pull hello-world3, 查看所有镜像docker imagesdocker image ls4,查看hello-world镜像历史docker history hello-world5,将hello-world:late...
2019-09-16 19:45:08 116
原创 部署(3)- docker进阶
1,网络模式说明目的:了解常见的4种网络模式常见的网络模式:1, 主机模式,host模式创建方式:docker run -itd —name=容器名字 —network=host 镜像名特点: 和宿主机的网卡一样,方便进行部署使用2, 桥接模式,bridge模式创建方式:docker run -itd —name=容器名字 —network=bridge 镜像...
2019-09-16 19:43:00 186
原创 部署(2)- nginx进阶
1,server_name配置目的:可以配置域名访问nginxserver { listen 6001; server_name www.aaa.com; location / { root /etc/nginx/my_html; index index1.html index2.html; }}2,loca...
2019-09-16 19:39:42 225
原创 部署(1)- 部署基础
1, 部署基础目的: 知道项目生命周期, 部署环境看文档2,nginx-介绍,安装,启动目的: nginx作用, 安装,启动优点:1, 支持高并发, 官方5w2, 内存消耗少3, 支持rewrite重写4,配置简单稳定5, 开源,支持多系统缺点:1, 动态处理差2, rewrite能力弱安装:apt-get install -y ...
2019-09-16 19:36:41 315 1
原创 python基础(7)- 输出
1. 格式化输出目的:简化程序代码常用的格式符号下面是完整的,它可以与%符号使用列表:格式符号转换%c字符%s字符串%d有符号十进制整数%u无符号十进制整数%o八进制整数%x十六进制整数(小写字母0x)%X十六进制整数(大写字母0X)%f浮点数%e科学计数法(小写’e’)%E科学计数法(大写“E”...
2019-09-13 21:31:21 169
原创 python基础(6)- 标识符和关键字
标识符和关键字1. 标识符开发人员在程序中自定义的一些符号和名称标识符是自己定义的,如变量名 、函数名等2. 标识符的规则标识符由字母、下划线和数字组成,且数字不能开头python中的标识符是区分大小写的3. 命名规则见名知意起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可 读性) 比如: 名字 就定义为 name , 定义学生 用 student驼峰命...
2019-09-13 21:22:38 288
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人