每日小学习三

1 django 中FBV 和 CBV 分别代表的是什么?

答: 基于函数的试图叫做FBV,基于类的试图叫做CBV

在python中使用CBV的有点:

1.提高了代码的复用性,可以使用面向对象的技术,比如MIxin(多继承)

2.可以用不同的函数针对不同的HTTP方法处理,而不是通过很多if判断,提高代码的可读性

 2 django路由系统中name的作用?

Django 路由系统重点之路由别名name,使用path("/" views.***, name = "***"),不论后台路径如何

进行参数修改,前台访问的路径不变,这样方便开发。

3 响应式所包含的状态码有哪些?写出常用的状态码?

1**:指示信息--表示请求已经接收,继续处理

2**:成功--表示请求已被成功接受,理解,接受

3**:重定向--要完成请求必须更近一步的操作

4**:客户端错误--请求有语法错误或要求无法实现

5**:服务器端错误--服务器未能实现合法的请求

200  客户端请求成功     400  语法有错误

401   状态码不对     404   请求资源不存在

500   服务器发生错误    503 服务器不能处理客户端要求

4 简述链接sqllites3 和mysql 的区别?

SQLITE功能简约,小型化,追求最大磁盘效率

MYSQL 功能全面,综合化,追求最大并发效率

 

5 python中yield的用法?

yield简单来说就是一个生成器,这样函数它记住上次返回时在函数体中的位置,对生成器第二次第n次    调用跳转至该函数    调用跳转至该函数

 

6 DJango 本生提供了runserver,为什么不能用来部署?

runserver   方法是调用Django 时经常用到的运行方式,它使用Django 自带的WSGI Server 运行,主要在测试和开发中使用,并且   runserver 开启的方式也是单进程

 

7  常用的mysql 引擎有哪些? 各引擎有什么区别?

答: 书要是mylsam 和 lnnoDB 两个引擎,主要区别如下

1. innodb 支持事务,这一点非常重要,事务是一种高级的处理方式,如果在一些增删中如果有错

可以换源回滚,myisam 不支持事务

2 myisam 适合查询以及插入为主的应用,lnnodb适和频繁的修改以及设计到安全性能较高的应用

3 innodb 适合外键  mysiam 不适合外键

4 mysql 中默认的mysian 引擎 ,如果要用innodb 需要指定

5 innodb 不支持副文本

6、对于自增长的字段,InnoDB 中必须包含只有该字段的索引,但是在 MyISAM
表中可以和其他字段一起建立联合索引;
7、清空整个表时,InnoDB 是一行一行的删除,效率非常慢。MyISAM 则会重
建表;
8、InnoDB 支持行锁(某些情况下还是锁整表,如 update table set a=1 where
user like ‘%lee%’

 

8 Django 中的request 对象是什么时候创建的?

答:当urlconf 文件匹配到用户输入的路径后,会调用对应的view函数,并将 Httprequest对象

作为第一个参数传输函数。并返回相应的requesgt对象。

上一篇:Django环境搭建


下一篇:django 常用命令