12 2019 档案
摘要:[TOC] 视图家族简介 :视图类 :视图工具类 :工具视图类 有九个类 :视图集 两个视图集基类,两个视图集子类,一个工具类 视图类APIView 继承View,拥有View的所有 重写了as_view方法,局部禁用csrf认证 重写dispatch 增加一系列类属性,局部 渲染和解析配置 视图类
阅读全文
摘要:```python # settings.py配置 TATIC_URL = '/static/' MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') REST_FRAMEWORK = { 'EXCEPTION_HANDLER': 'api.exception.exception_handler' } BASE_URL
阅读全文
摘要:models.py 二次封装response.py exception.py serializer.py urls.py views.py
阅读全文
摘要:[TOC] 序列化字段了解配置 了解配置: response二次封装 连表深度查询 外键字段默认显示的是外键值(int类型),不会自己进行深度查询 深度查询方式: 子序列化:必须有子序列化类配合,不能反序列化 配置depth:自动深度查询的是关联表测所有字段,数据量太多 插拔式@property:名
阅读全文
摘要:[TOC] 基本概念 基表:为抽象表,是专门用来继承,提供公有字段,自身不会完成数据库迁移 断关联表关系 不会影响连表查询操作效率 会提升连表增删改操作效率 易于后期数据库表的重构 缺点在于,数据库本身没有连表检测,容易出现脏数据,需要通过严格的逻辑避免脏数据的参数 A依赖B,先插入A记录,该记录对
阅读全文
摘要:```python """ 1、新建一个django项目,定义一个Car类,有name字符串属性,color整型选择属性(0:银色,1:黑色,2:红色,3:灰色),price全精度小数类型,image图片文件类型,brand字符串类型 2、基于ModelSerializer类,完成Car资源的单查,群查,单增接口 序列化:显示车名,车的颜色,车的价格,车的海报,车的品牌 反序列化:必须提供车名,车
阅读全文
摘要:[TOC] 在视图中手动完成序列化操作 Serializer序列化 简单来说,序列化就是将数据给前台;反序列化就是完成数据库入库 视图类序列化过程: ORM操作得到数据 将数据序列化成可以返回给前端的数据 将数据返回给前台 Serializer序列化总结: 设置序列化字段,字段名与字段类型要与处理的
阅读全文
摘要:总路由urls.py 分发路由urls.py settings配置 视图views.py 处理响应 服务端异常处理
阅读全文
摘要:[TOC] django rest_framework框架的封装特点 APIView的请求生命周期 APIView类继承View类,重写了as_view和dispach方法 重写的as_view方法,主体还是View的as_view,只是在返回视图view函数地址时,局部禁用csrf认证 重写的di
阅读全文
摘要:[TOC] drf(Django restframework)框架安装 drf是Django的插件, 所以要提前安装Django 安装drf插件: 使用drf时, 要在django项目中的settings文件中注册 Web API接口 什么是接口 规定了提交参数的请求方式,访问 其可以获取响应的反馈
阅读全文
摘要:[TOC] vue安装ajax插件:axios 安装插件 在项目目录下安装 在main.js中配置 在一个组件的逻辑中发送ajax请求 CORS跨域问题(同源策略) 同源:http协议相同、服务器ip地址相同、app应用端口相同 跨域:协议、ip地址、应用端口有一个不同,就是跨域 django默认是
阅读全文
摘要:[TOC] Vue项目创建 输入 初始化项目 pycharm配置并启动vue项目 vue项目目录结构分析 js原型补充 vue项目生命周期 全局脚本文件main.js 文件入口 改为: 启动项目,加载主脚本文件 mian.js,加载vue环境, 创建根组件完成渲染;加载系统已有的第三方环境:rout
阅读全文
摘要:``` ad_data = { tv: [ {img: 'img/tv/001.png', title: 'tv1'}, {img: 'img/tv/002.png', title: 'tv2'}, {img: 'img/tv/003.png', title: 'tv3'}, {img: 'img/tv/004.png', title: 'tv4'}, ], phone: [ {img: 'img
阅读全文
摘要:[TOC] 组件概念 html、css、js 的集合体,为该集合体命名,用该名字复用html、css与js组成的集合体 复用性 组件分类: 根组件:new Vue() 生成的组件 局部组件: 组件名={} 内部采用的是vue语法 全局组件: vue.component('组件名', {}, {})
阅读全文
摘要:```scores = [ { name: 'Bob', math: 97, chinese: 89, english: 67 }, { name: 'Tom', math: 67, chinese: 52, english: 98 }, ...
阅读全文
摘要:[TOC] 表单指令 条件指令 循环指令 循环指令案例 前台数据库 delimiters:分隔符 过滤器 filters 总结: 在filters成员中定义过滤器方法 可以对多个值进行过滤,过滤时还可以传入额外的辅助参数 过滤的结果可以再进行下一次过滤 (过滤的串联) 计算属性 computed 总
阅读全文
摘要:1、有红、黄、蓝三个按钮,以及一个200 X 200矩形框box,点击不同的按钮,box就会被切换为指定的颜色 2、有一个200X200矩形框wrap,点击wrap本身,记录点击次数,如果是1次wrap为pink色,2次wrap为green色,3次wrap为cyan色,4次重新回到pink色,依次类
阅读全文
摘要:[TOC] vue基础 渐进式JavaScript 框架 安装 "vue" 一、vue简介 1、什么是vue 前端三大框架之一, 可以独立完成前后端分离式web项目的JavaScript框架 2、vue的优势 前端三大主流框架: Angular React Vue 先进的前端设计模式: MVVM (
阅读全文
摘要:[TOC] 基于django中间件的思想,实现功能配置 前言 在学习django中间件期间,我们可以把不需要使用的中间件注释掉,就可以不使用这个中间件的功能, 那么我们可以尝试着使用django中间件的这种思想,来实现 这种功能. 前期准备 现在有个需求, 要实现一个群发信息的功能,通过邮件\短信\
阅读全文
摘要:[TOC] 跨站请求伪造 csrf 钓鱼网站 就类似于你搭建了一个跟银行一模一样的web页面 , 用户在你的网站转账的时候输入用户名 密码 对方账户 银行里面的钱确实少了 但是发现收款人变了 原理实现: 模拟实现 创建两个django项目 解决钓鱼网站的思路: 在django中 中间件csrf ,
阅读全文
摘要:[TOC] auth模块 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统。此时我们需要实现包括用户注册、用户登录、用户认证、注销、修改密码等功能,这还真是个麻烦的事情呢。 Django作为一个完美主义者的终极框架,当然也会想到用户的这些痛点。它内置了强大的用户认证系统 auth,它默
阅读全文
摘要:[TOC] 中间件简介 django中间件就类似于django的门户,所有的请求和响应都必须经过中间件才能正常通过,可以用来处理Django的请求和响应的数据。django中间件在设计到一些全局方面的功能时,作用非常大。每个中间件组件都负责做一些特定的功能。django默认有七个中间件。 djang
阅读全文
摘要:[TOC] cookie与session cookie介绍 HTTP协议 是无状态的,每次请求连接都是不保存客户端状态的,cookie就是用来保存客户端状态的。试想一下,如果每次登录一个网站,每次跳转页面都不会记录我的信息,都要求重新输入密码,是不是很不爽? Cookie具体指的是一段小信息,它是服
阅读全文
摘要:[TOC] forms组件 先抛出一个需求: 手动书写需求 views.py 这里实现了三个功能: 手写html页面获取用户输入信息 将数据传入后端做数据校验 如果有错误,展示错误信息 但是这个页面手写麻烦,输入信息写错了,一刷新信息全没了,很不友好!! 使用forms组件校验数据 使用forms组
阅读全文
摘要:[TOC] 多对多关系表的三种创建方式 全自动 在我们之前创建多对多表的时候,一直用的都是全自动的方式来创建第三张关系表的 好处: 在于 django orm会自动帮你创建第三张关系表 还内置了操作第三张表的方法:add set remove clear 不足: 但是它只会帮你创建两个表的关系字段
阅读全文
摘要:[TOC] ajax结合sweetalert使用 点击下载 "Bootstrap sweetalert" 一通CV大法: 这里有个问题,发现汉字被挡住了。。。 通过谷歌浏览器的检查,查看html元素修改,加上样式即可: 后端views.py bulk_create批量插入数据 在django向数据库
阅读全文
摘要:[TOC] Ajax简介 Ajax(Asynchronous Javascript And XML)翻译成中文就是“异步的Javascript和XML”。即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML)。 ajax是异步提交的 Ajax 不是新的
阅读全文
摘要:[TOC] ORM查询优化 only与defer 这样是不会有任何返回结果,因为ORM是惰性查询,减少不必要的数据库操作,降低数据库的压力。 也就是说 能少走一次数据库就少走一次 ,最好是一次数据库都不要走或者说之走一次。 only优化: only会把括号内字段对应的值,封装到查询返回的对象中,通过
阅读全文