数据库视图

Django之中间件与form其他用法

谁都会走 提交于 2019-12-06 08:48:35
中间件常用的五种方法: process_request(self,request) process_request有一个参数,就是request,与视图函数中的request一样。它的返回值可以是None也可以是HttpResponse对象。返回值是None,按正常流程继续走,交给下一个中间件处理,如果是HttpResponse对象,Django将不执行视图函数,而将相应对象返回给浏览器。 示例: 应用下自定义一个文件夹,自定义一个py文件: from django.utils.deprecation import MiddlewareMixin class MD1(MiddlewareMixin): def process_request(self,request): print("MD1的process_request") class MD2(MiddlewareMixin): def process_request(self,request): print("MD2的process_request") settings配置: 在MIDDLEWARE列表中加入 'app01.mymiddleware.my.MD1', 'app01.mymiddleware.my.MD2', 执行结果是: MD1的process_request MD2的process_request

Django开发常用方法及面试题

别来无恙 提交于 2019-12-06 08:45:47
对Django的认识? 1.Django是走大而全的方向,它最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,它就能自动生成数据库结构、以及全功能的管理后台。 2.Django内置的ORM跟框架内的其他模块耦合程度高。 应用程序必须使用Django内置的ORM,否则就不能享受到框架内提供的种种基于其ORM的便利; 理论上可以切换掉其ORM模块,但这就相当于要把装修完毕的房子拆除重新装修,倒不如一开始就去毛胚房做全新的装修。 3.Django的卖点是超高的开发效率,其性能扩展有限;采用Django的项目,在流量达到一定规模后,都需要对其进行重构,才能满足性能的要求。 4.Django适用的是中小型的网站,或者是作为大型网站快速实现产品雏形的工具。 5.Django模板的设计哲学是彻底的将代码、样式分离; Django从根本上杜绝在模板中进行编码、处理数据的可能。 """ 测试代码 """ Django 、Flask、Tornado的对比 1.Django走的是大而全的方向,开发效率高。它的MTV框架,自带的ORM,admin后台管理,自带的sqlite数据库和开发测试用的服务器 给开发者提高了超高的开发效率 2.Flask是轻量级的框架,自由,灵活,可扩展性很强,核心基于Werkzeug WSGI工具和jinja2模板引擎 3.Tornado走的是少而精的方向

oracle视图和索引

老子叫甜甜 提交于 2019-12-06 06:56:46
视图和索引 视图 视图的作用 控制数据访问、简化查询、避免重复访问相同的数据 视图的优点 限制用户只能通过视图检索数据,用户看不到底层基表 注意事项 视图可以理解为临时表, 会随着真实表的数据变化而自动变化 视图的名字以V_开头,表明是视图; 视图不提高任何效率 视图不占用空间 不是所有的视图都能更改(若改动能对应的原来的表,则可以,否则不可以,比如用了聚合函数的,或者group by而来的) 简单视图 语法 create or replace view 视图名 as select 语句; create or replace :关键字,创建或者替换(若原来没有,则创建,若已经有,则替换原来的) 范例 SQL> create or replace view v_emp as 2 select empno, ename, job from emp; 视图已创建。 SQL> select * from v_emp; EMPNO ENAME JOB ---------- -------------------- ------------------ 7777 S_HH%GGH CLERK 7369 SMITH CLERK 7499 ALLEN SALESMAN ... 只读视图 语法 create or replace view 视图名 as select 语句 with read

drf小结

半城伤御伤魂 提交于 2019-12-06 05:31:46
DRF框架 一. 认识restful架构 REST,即Representational State Transfer的缩写 ,我们一般叫他'表现层状态转化' REST的路径设计思路是简洁: 资源(比如HTML,或者图片,文档之类的)他应是名词的,我们之前在获取商品的时候,我们可能会这样写:/get_products/ 但是这样是不对的.错的.我们在路径中不应该出现动词也就是get,我们使用rest设计路径就 会是这样:GET/products/ 这里的GET是请求方式,表示我们以get的方式来请求数据,当然我们在地址栏里面是不需要输入GET的.这样我们的路径就可以很简洁了. HTTP动词 HTTP的动词有四个: GET(SELECT):从服务器取出资源(一项或多项) POST(CREATE):在服务器新建一个资源 PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源) DELETE(DELETE):从服务器删除资源。 二. 序列化与反序列化 视图中一般做三件事: 将请求的数据(如JSON格式)转换为模型类对象 操作数据库 将模型类对象转换为响应的数据(如JSON格式) 我们在第一步和第三步的时候我们都会涉及到将json数据转化成模型类对象,以及将模型类对象转化成json的数据返回回去. 这里就会涉及到一个来回重复转化的问题,所以我们使用序列化,以及反序列化.

达梦数据库的管理

对着背影说爱祢 提交于 2019-12-06 04:41:48
管理表,视图,索引、序列 表的管理 达梦支持的哪些表: 默认的表是(索引组织表),堆表,临时表,分区表,外部表等。 如何规划表? 命名:字母开头 a-z,0-9,$#_ 数据类型:int char varchar date clob blob number等等。 存储位置:自已的规划的表空间。 约束(5大约束) 非空约束,唯一约束,主键,检查,外键 注释:comment 遵循3范式 案例1:规划一张学员信息表。 表名:STU 学号(id char(10)), 姓名(sname varchar(20) not null), 性别 (sex char(1)) 年龄(age int) 电话(tel varchar(15) not null) 家庭住址:(address varchar(50)) 表空间:STU 约束:主键列---学号 非空---姓名,电话 备注:学员信息表 create table "TEST3"."STU" ( "ID" CHAR(10) not null , "SNAME" VARCHAR(20) not null , "SEX" CHAR(1), "AGE" INT, "TEL" VARCHAR(15) not null , "ADDRESS" VARCHAR(50), primary key("ID") ) storage(initial 1, next 1,

SpringBoot application.properties配置参数详情

家住魔仙堡 提交于 2019-12-06 04:17:50
multipart multipart.enabled 开启上传支持(默认:true) multipart.file-size-threshold: 大于该值的文件会被写到磁盘上 multipart.location 上传文件存放位置 multipart.max-file-size最大文件大小 multipart.max-request-size 最大请求大小 server server.address 服务器地址 server.port 服务器端口 server.context-parameters.[param name] 设置 servlet 上下文参数 server.context-path 应用上下文路径 Jsp-servelt server.jsp-servelt.class-name 针对jsp 使用的 Servlet 类名(默认:org.apache.jasper.servlet.JspServlet) server.jsp-servlet.registered JspServelt 是否要注册到内嵌的 Servlet 容器里(默认 true) server.jsp-servlet.init-parameters[param name] 设置 Jsp Servlet 初始化参数 server.servlet-path主分发器 Servlet 的路径(默认:/)

flask 视图基础和url

纵然是瞬间 提交于 2019-12-06 02:50:49
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支持扩展以向应用程序添加此类功能。 二、url 与函数映射 from flask import Flask,request,render_template app = Flask(__name__) #http://127.0.0.1:5001/test/?uname=zhangsan&pwd=123456 @app

mysql视图的作用

天涯浪子 提交于 2019-12-06 02:00:40
MySQL视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。 对其中所引用的基础表来说,MySQL视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。通过视图进行查询没有任何限制,通过它们进行数据修改时的限制也很少。 视图是存储在数据库中的查询的sql 语句,它主要出于两种原因:安全原因,视图可以隐藏一些数据,如:社会保险基金表,可以用视图只显示姓名,地址,而不显示社会保险号和工资数等,另一原因是可使复杂的查询易于理解和使用。 案列测试: 测试表:user有id,name,age,sex字段 测试表:goods有id,name,price字段 测试表:ug有id,userid,goodsid字段 视图的作用实在是太强大了,以下是我体验过的好处: 作用一: 提高了重用性,就像一个函数。如果要频繁获取user的name和goods的name。就应该使用以下sql语言。示例: select a.name as username, b.name as goodsname from user as a, goods as b, ug as c where a.id=c.userid and c

复制一个表到另一个表、视图、临时表

守給你的承諾、 提交于 2019-12-05 22:16:29
创建一个表new_table和old_table表结构一样(没有old_table的记录) create table new_table as select * from old_table where 1=0; 创建一个表new_table和old_table表结构一样(有old_table的记录) create table new_table as select * from old_table; 复制一个表到另一个表 insert into new_table select * from old_table; 创建视图,删除视图 create or replace view **_view as select * from **table; drop view **_view; 创建临时表 create global temporary table tablename on commit preserve rows as select * from others_table Oracle 临时表的实际用法的经验心得 临时表只能在当前连接内有效; 临时表不建立索引,所以数据量比较大或进行多次查询时,不推荐使用; 数据处理比较复杂的时候表快,反之视图快点; 在仅仅查询数据的时候建议用游标; 我们目前所使用的 Oracle 是作为 数据库 支撑平台的实际应用

第一节:django环境 模型 视图 后台

梦想的初衷 提交于 2019-12-05 22:16:02
------------恢复内容开始------------ 1.django环境 模型 视图 后台 1.虚拟环境搭建 1.1 安装pip与换源 1.1.1 安装pip curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py python3 get-pip.py # 针对python3 # 如果使用python2 python get-pip.py 1.1.2 pip换源 临时换源 pip install <package> -i http://<mirror>/simple pip install packagename -i http://pypi.douban.com/simple --trusted-host pypi.douban.com 永久换源 永久性设置,是在用户根目录(~,而非系统根目录 / )下添加配置~/.pip/pip.conf目录添加可信源,如果目录文件不存在,可直接创建。 [root@localhost ~]# cd [root@localhost ~]# mkdir .pip [root@localhost ~]# cd .pip [root@localhost .pip]# vim pip.conf # 写入如下内容 [global] index-url=http://pypi.douban