面试一
1. 中间件一般都做什么?
django处理一个request请求的过程是首先通过中间件,我们可以在 Middleware 这个地方把所有Request 拦截住,用我们自己的方式完成处理以后直接返回 Response。
2. 描述下装饰器,怎么定义装饰器?
(1)装饰器:装饰器其实就是一个闭包,把一个函数当做参数然后返回一个替代版函数 (2)定义装饰器:
3. 描述下闭包?
闭包可以归纳三点: (1)闭包函数必须有内嵌函数 (2)内嵌函数需要引用该嵌套函数上一级namespace中的变量 (3)闭包函数必须返回内嵌函数
4. 面向对象中类方法,静态方法,实例化方法的作用?
(1)类方法:将类内的函数,转换成类方法,函数上装饰@classmethod 会将函数的自动传值参数改成cls。 (2)静态方法:此种方法相当于给类扩展了一个功能,将类内的函数实例化,给类或是对象使用。此时类内的函数就是普通的函数,不管是类还是实例化的对象都可以使用,不再属于谁的绑定方法,就是一个函数。 (3)实例化:类的实例化就会产生一个实例(对象)。 可以理解为类加()把虚拟的东西实例化,得到具体存在的值,叫做类的实例化。
5. 局部变量可以别修改吗?
6. python中的三个空间,三个空间的查找流程
locals>globals>__builtins__
7.
8. mysql数据库都有那些索引
B-TREE索引和嘻哈索引
9. mysql中连表都用什么,他们有什么区别
内连接 只连接匹配的行,又叫等值连接,又生出自然连接。 左外连接 包含左边表的全部行,以及右边表中全部匹配的行。 右外连接 包含右边表的全部行,以及左边表中全部匹配的行。 全外连接 包含左、右两个表的全部行,不管另外一边的表中是否存在与它们匹配的行。 交叉连接 笛卡尔积-它不使用任何匹配或者选取条件,而是直接对两张表的每个行进行交叉匹配。
10. 如果不进行连表会出现什么现象
11. 连表在数据库是怎么实现的
12.cookie的作用是
1.可以在客户端上保存用户数据,起到简单的缓存和用户身份识别等作用。 2.保存用户的登陆状态,用户进行登陆,成功登陆后,服务器生成特定的cookie返回给客户端,客户端下次访问该域名下的任何页面,将该cookie的信息发送给服务器,服务器经过检,来判断用户是否登陆。 3.记录用户的行为。
13.http中缓冲有哪些
14.联合索引一般用在什么地方
如果你经常要用到多个字段的多条件查询,可以考虑建立联合索引
15.非关系型数据库都了解那些?
16.关系型数据库那些体现出了关系型
17.常用的一些状态码都有哪些
200——服务器成功返回网页 204——请求收到,但返回信息为空 301——删除请求数据 304——客户端已经执行了GET,但文件未变化 400——错误请求,如语法错误 401——请求授权失败 404——请求的网页不存在 500——服务器产生内部错误 502——服务器暂时不可用,有时是为了防止发生系统过载 503——服务器超时过载或暂停维修
18.Django中的redirect是怎么进行重定向的
19.局部变量可不可以进行修改,能修改一般都是什么时候进行修改
可以修改 在局部作用域中修改
20.Django中ORM连表是怎么连得,一对多的连接,一对一的连接,多对多的连接