数据库视图

DRF总结

纵饮孤独 提交于 2019-12-10 11:48:28
转自 https://blog.csdn.net/weixin_44143222/article/details/88878072 web开发的两种模式:前后端不分离和前后端分离 RestFul API接口设计风格:前后端分离被广泛采用 使用Django基础自定义Rest API接口 DRF框架: 提高开发Rest API接口的效率 web开发的两种模式 前后端不分离:前端看到的效果是由后端进行控制的 缺点:只适用于纯网页的应用。 优点:有利于网站的SEO优化。 ———————————————— 版权声明:本文为CSDN博主「zyj1189」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/weixin_44143222/article/details/88878072 前后端分离:后端只返回前端所需的数据,至于数据怎么进行展示,由前端自己控制。 优点:可以对接不同类型的客户端。 缺点:不利于SEO优化 RestFul API接口设计风格介绍 统一接口设计风格: 1.URL地址尽量使用名词,不要出现动词 2.使用不同的请求方式,代表要执行不同的操作 (GET)获取 POST(新增) PUT(修改)DELETE(删除) 不常用:PATCH(修改) HEAD(只返回请求头没有请求体)

(day58)十、Cookie、Session、Token、Django中间件

安稳与你 提交于 2019-12-10 03:16:08
[toc] 一、Cookie (一)由来 HTTP协议的无状态特性导致每次的请求都是独立的,即客户端和服务器在某次会话中产生的数据不会被保存,因此产生了Cookie,用来保存客户端的用户状态 (二)什么是Cookie Cookie具体是指服务器发送出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些信息,以便服务器通过Cookie提取有用信息从而判断访问者 Cookie最大支持4096字节,保存在客户端,安全性低 (三)Django中操作Cookie (1)设置Cookie 普通 obj.set_cookie(key,value,...) obj为HttpResponse或render或redirect实例化的对象 加盐 obj.set_signed_cookie(key,value,salt='加密盐', max_age=None, ...) obj为HttpResponse或render或redirect实例化的对象 参数 key:键 value:值 max_age:超时时间,以秒为单位,不能给IE设置cookie expires:超时时间,以秒为单位,可以给IE设置cookie path:cookie生效的路径,/表示根路径,可以被任何URL页面访问 domain:cookie生效的域名 secure:布尔值,是否为HTTPS传输 httponly:布尔值

flask 视图基础和url

浪子不回头ぞ 提交于 2019-12-10 02:18:31
FLASK介绍 一、 Flask是一个用Python编写的Web应用程序框架。 它由 Armin Ronacher 开发,他领导一个名为Pocco的国际Python爱好者团队。 Flask基于Werkzeug WSGI工具包和Jinja2模板引擎。两者都是Pocco项目。 Web Server Gateway Interface(Web服务器网关接口,WSGI)已被用作Python Web应用程序开发的标准。 WSGI是Web服务器和Web应用程序之间通用接口的规范。 Werkzeug它是一个WSGI工具包,它实现了请求,响应对象和实用函数。 这使得能够在其上构建web框架。 Flask框架使用Werkzeug作为其基础之一。 jinja2是Python的一个流行的模板引擎。Web模板系统将模板与特定数据源组合以呈现动态网页。 Flask通常被称为微框架。 它旨在保持应用程序的核心简单且可扩展。Flask没有用于数据库处理的内置抽象层,也没有形成验证支持。相反,Flask支持扩展以向应用程序添加此类功能。 学习链接可以参照:https://www.w3cschool.cn/flask/flask_overview.html 二、url 与函数映射 from flask import Flask,request,render_template app = Flask(__name__

MVC模式

旧城冷巷雨未停 提交于 2019-12-10 00:45:29
MVC的全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范。它是用一种业务逻辑、数据与界面显示分离的方法来组织代码,将众多的业务逻辑聚集到一个部件里面,在需要改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑,达到减少编码的时间。 MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器。 使用的MVC的目的:在于将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如Windows系统资源管理器文件夹内容的显示方式,下面两张图中左边为详细信息显示方式,右边为中等图标显示方式,文件的内容并没有改变,改变的是显示的方式。不管用户使用何种类型的显示方式,文件的内容并没有改变,达到M和V分离的目的。 在网页当中, V即View视图是指用户看到并与之交互的界面。比如由html元素组成的网页界面,或者软件的客户端界面。MVC的好处之一在于它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,它只是作为一种输出数据并允许用户操纵的方式。 M即model模型是指模型表示业务规则。在MVC的三个部件中,模型拥有最多的处理任务。被模型返回的数据是中立的,模型与数据格式无关,这样一个模型能为多个视图提供数据

Django REST framework框架详解

淺唱寂寞╮ 提交于 2019-12-09 23:50:43
Django REST framework 简介 在序列化与反序列化时,虽然操作的数据不尽相同,但是执行的过程却是相似的,也就是说这部分代码是可以复用简化编写的。 在开发REST API的视图中,虽然每个视图具体操作的数据不同,但增、删、改、查的实现流程基本套路化,所以这部分代码也是可以复用简化编写的: 增:校验请求数据 -> 执行反序列化过程 -> 保存数据库 -> 将保存的对象序列化并返回 删:判断要删除的数据是否存在 -> 执行数据库删除 改:判断要修改的数据是否存在 -> 校验请求的数据 -> 执行反序列化过程 -> 保存数据库 -> 将保存的对象序列化并返回 查:查询数据库 -> 将数据序列化并返回 Django REST framework 框架是一个用于构建Web API 的强大而又灵活的工具。帮助我们简化开发REST API的工作。DRF框架是建立在 Django框架基础之上 ,由Tom Christie大牛二次开发的开源项目。 特点 提供了定义序列化器Serializer的方法,可以快速根据 Django ORM 或者其它库自动序列化/反序列化; 提供了丰富的类视图、Mixin扩展类,简化视图的编写; 丰富的定制层级:函数视图、类视图、视图集合到自动生成 API,满足各种需要; 多种身份认证和权限认证方式的支持; 内置了限流系统; 直观的 API web 界面;

laravel框架的总结

北战南征 提交于 2019-12-09 22:52:03
1.下载和安装composer 1.1 使用安装程序 通过如下地址,下载 composer 的安装包 https://getcomposer.org/download/ 第一个一定要√,不√就最后在下载,然后默认安装即可, 1.2 安装阿里云镜像 composer config -g repo . packagist composer https: / / mirrors . aliyun . com / composer / 2. 创建laravel项目 两种方式 laravel 安装器 composer 安装 2.1composer 创建项目 https://learnku.com/laravel 说明:创建laravel 项目一定要选择一个英文目录 shift右键打开窗口 执行如下命令 composer create-project --prefer-dist laravel / laravel demo1 2.2 启动项目 php artisan serve 3. 数据库配置 数据库的配置存储于 database.config 中 但 database.config 中又读取了 .even 中的数据 所以需要修改 .env 中的数据库配置 修改完成后,执行如下命令,在指定的数据库中创建表 php artisan migrate:install 4. 路由 laravel

MVC和MVVM有什么区别?

可紊 提交于 2019-12-09 21:54:40
标准“模型视图控制器”模式和Microsoft的Model / View / ViewModel模式之间有区别吗? #1楼 我认为理解这些首字母缩略词含义的最简单方法是暂时忘记它们。 取而代之的是,考虑一下它们起源的软件。 实际上,可以归结为早期Web和桌面之间的区别。 第一个缩写MVC起源于网络。 (是的,以前可能曾经有过,但是Web才是它如何被广大Web开发人员所采用。)考虑一下数据库,HTML页面和它们之间的代码。 让我们对其进行细化以得出MVC:对于»database«,让我们假设数据库加上接口代码。 对于“ HTML页面”,我们假设HTML模板加上模板处理代码。 对于“之间的代码”,我们假设代码将用户的点击映射到操作,这可能会影响数据库,肯定会导致显示另一个视图。 就是这样,至少出于此比较的目的。 让我们保留此Web东西的一个功能,而不是今天,而是十年前存在的那年,当时JavaScript是一种卑鄙的,令人卑鄙的烦恼,真正的程序员对此很好地避免了:HTML页面本质上是愚蠢而被动的。 浏览器是瘦客户端,或者如果可以的话,是不良客户端。 浏览器中没有智能。 整页重新加载规则。 每次都会重新生成»view«。 让我们记住,尽管风靡一时,但与台式机相比,这种Web方式仍然落后很多。 桌面应用程序可以是胖客户端,也可以是富客户端。 (甚至可以将Microsoft

MVC模式

ぐ巨炮叔叔 提交于 2019-12-09 21:51:49
MVC的全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范。它是用一种业务逻辑、数据与界面显示分离的方法来组织代码,将众多的业务逻辑聚集到一个部件里面,在需要改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑,达到减少编码的时间。 MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器。 使用的MVC的目的:在于将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如Windows系统资源管理器文件夹内容的显示方式,下面两张图中左边为详细信息显示方式,右边为中等图标显示方式,文件的内容并没有改变,改变的是显示的方式。不管用户使用何种类型的显示方式,文件的内容并没有改变,达到M和V分离的目的。 在网页当中, V即View视图是指用户看到并与之交互的界面。比如由html元素组成的网页界面,或者软件的客户端界面。MVC的好处之一在于它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,它只是作为一种输出数据并允许用户操纵的方式。 M即model模型是指模型表示业务规则。在MVC的三个部件中,模型拥有最多的处理任务。被模型返回的数据是中立的,模型与数据格式无关,这样一个模型能为多个视图提供数据

flask基础

北战南征 提交于 2019-12-09 20:04:30
flask通用模板 from flask import Flask , render_template , request from flask_sqlalchemy import SQLAlchemy from flask_migrate import Migrate , MigrateCommand from flask_script import Manager app = Flask ( __name__ ) # 为app指定数据库的链接信息 app . config [ 'SQLALCHEMY_DATABASE_URI' ] = \ 'mysql+pymysql://root:123456@localhost:3306/flask' # 取消sqlalchemy的信号追踪 app . config [ 'SQLALCHEMY_TRACK_MODIFICATIONS' ] = False # 设置程序的启动模式 app . config [ 'DEBUG' ] = True # 非查询自动提交回数据库 app . config [ 'SQLALCHEMY_COMMIT_ON_TEARDOWN' ] = True # 创建SQLAlchemy的实例db,以后在程序中通过db来操作数据库 db = SQLAlchemy ( app ) # 创建Manager对象

MySQL sys库视图记录

本秂侑毒 提交于 2019-12-09 18:31:29
sys schema视图摘要: 主机相关信息:以host_summary开头的视图,主要汇总了IO延迟的信息,从主机、文件事件类型、语句类型等角度展示文件IO的信息。 innodb相关信息:以innodb开头的视图,汇总了innodb buffer page信息和事务等待 innodb 锁信息。 IO使用情况:以IO开头的视图,总结了IO使用的信息,包括等待IO的情况,IO使用量情况。 内存使用情况:以memory开头的视图,从主机、线程、用户、事件角度展示内存使用情况。 连接与会话信息:其中processlist和session相关的视图,总结了会话相关信息。 表相关信息:以schema_table开头的的视图,从全表扫描、innodb缓冲池等方面展示了表统计信息。 索引信息:其中包含了index的视图,统计了索引使用情况,以及重复索引和未使用的索引情况。 语句相关信息:以statement开头的视图,统计规范化的语句使用情况,包括错误数、警告数、执行全表扫描的、使用临时表的、执行排序等信息。 用户的相关信息:以user开头的视图,统计了用户使用的文件IO、执行的语句统计信息等。 等待事件相关信息:以wait开头的视图,从主机和事件角度展示等待类事件的延迟情况。 查看表的访问量 select table_schema,table_name,sum(io_requests+io