python面试题-django相关
1、中间件
中间件一般做认证或批量请求处理,django中的中间件,其实是一个类,在请求和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法,
如请求过来 执行process_request, view,process_response方法
2、Django、Tornado、Flask各自的优势
Django:Django无socket,django的目的是简便,快速开发,并遵循MVC设计,多个组件可以很方便的以“插件”形式服务于整个框架,
django有许多功能强大的第三方插件。django具有很强的可扩展性。
Tornado:它是非阻塞式服务器,而且速度相当快,得力于其 非阻塞的方式和对epoll的运用,Future对象,缺点:没有session,需要自定制
Flask:是一个微型的web框架,配合SQLALchemy来使用,jinja2模板, werkzeug接口
3、 django版本,Python版本,linux版本
django:1.11
Python:3.6
linux:6.9
4、django的template的注释是什么样子的
单行:{#注释#}
多行注释:{%comment%}
5、django怎么弄并发的
nginx+uwsig为django提供高并发,nginx的并发能力超过,单台并发能力过万,在纯静态的web服务中更是突出其优越的地方,由于底层使用epoll异步IO模型进行处理。
6、tornodo的ioloop知道是什么吗?
事件循环
7、select_related和prefetch_related,Q和F
select_related:一对多使用,查询主动做连表
prefetch_related:多对多或者一对多的时候使用,不做连表,做多次查询
Q:用于构造复杂查询条件
F:更新时用于获取原来的值,专门取对象中某一列进行操作
8、什么是ORM?
ORM,即Object-Relational Mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间做一个映射
ORM优缺点:
优点:摆脱复杂的SQL操作,适应快速开发,让数据结果变得简单,数据库迁移成本更低
缺点:性能较差,不适用于大型应用,复杂的SQL操作还需要通过SQL语句实现
9、CORS跨域资源共享
首先会发送"预检"opption",请求,如果"预检"成功,则发送真实数据。
10、Django的Form主要具有以下功能?
生成HTMl标签,验证用户数据 is_vaild,HTML Form提交保留上次提交数据,初始化页面显示内容
11、CBV和FBV
CBV在指定的类上面加上装饰器或在此方法上面添加装饰器 @method_decorator,并继承view
12、cookie及session
cookie:是保留在客户端上面的一组键值对,cookie不是很安全,别人可以分析存放在本地的cookie
session:是保存在服务器上面的一组键值对,依赖与cookie,安全指数比cookie高
13、django的请求生命周期
请求来了先到uwsgi,把请求做一部分分装给django框架,然后经过所有的中间件,路由,视图,视图处理再返回给中间件,中间件在返回给uwsgi,在返回给用户。
14、uwsgi和wsgi
wsgi:是web服务器网关接口,是pyhton应用程序或框架和web服务器之间的一种接口,其广泛使用的是django框架。
uwsgi:是一个web服务器,它实现了wsgi协议,Nginx中HttpUwsgiModule的作用是与Uwsgi服务器进行交换
15、解释下django - debug -toolbar的使用
使用django开发站点时,可以使用django-debug-toolbar来进行调试,在settings.py中添加 'debug—toolbar.midleware.Debug ToolbarMiddleware'到项目的MIDDLEWARE_CLASSES内。
python面试题-django相关的更多相关文章
- Python面试题-数据库相关
1.mysql如何做分页 mysql数据库做分页用limit关键字,它后面跟两个参数startIndex和pageSize 2.mysql引擎有哪些 innodb和myisam两个引擎,两者区别是 i ...
- python面试题——爬虫相关
1.接触过几种爬虫模块 urllib.requests这两种爬虫模块. 2.robots协议是什么? 它就是一个防君子不防小人的协议,网站有一些数据不想被爬虫程序爬取,可以编写robots协议文件,明 ...
- python公司面试题集锦 python面试题大全
问题一:以下的代码的输出将是什么? 说出你的答案并解释. class Parent(object): x = 1 class Child1(Parent): pass class Child2(Par ...
- Python面试题整理-更新中
几个链接: 编程零基础应当如何开始学习 Python ? - 路人甲的回答 网易云课堂上有哪些值得推荐的 Python 教程? - 路人甲的回答 怎么用最短时间高效而踏实地学习 Python? - 路 ...
- 面试前赶紧看了5道Python Web面试题,Python面试题No17
目录 本面试题题库,由公号:非本科程序员 整理发布 第1题: Flask中的请求上下文和应用上下文是什么? 第2题:django中间件的使用? 第3题: django开发中数据做过什么优化? 第4题: ...
- 最新python面试题
1.一行代码实现1--100之和 利用sum()函数求和 2.如何在一个函数内部修改全局变量 利用global 修改全局变量 3.列出5个python标准库 os:提供了不少与操作系统相关联的函数 s ...
- Python面试题及答案汇总整理(2019版)
发现网上很多Python面试题都没有答案,所以博主花了很长时间搜集整理了这套Python面试题及答案,由于网上的Python相关面试题大多数都是2019年的,所以我这个也是2019版的,哈哈~ (文末 ...
- Python攻关之Django(一)
课程简介: Django流程介绍 Django url Django view Django models Django template Django form Django admin (后台数据 ...
- python框架之django
python框架之django 本节内容 web框架 mvc和mtv模式 django流程和命令 django URL django views django temple django models ...
随机推荐
- leetcode刷题-39组合总和
题目 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合. candidates 中的数字可以无限制重 ...
- 分布式处理框架Hadoop的安装与使用
Hadoop简介 Hadoop是一个由Apache基金会所开发的分布式系统基础架构.用户可以在不了解分布式底层细节的情况下,开发分布式程序. 充分利用集群的威力进行高速运算和存储.Hadoop实现了一 ...
- 【漫话DevOps】Agile,CI/CD,DevOps
随着DevOps理念的普及与扩散,可能会被一大堆名字概念搞的莫名其妙,理清它们之间的关系可以帮助团队知道DevOps如何落地,改善工作流程. Here's a quick and easy way t ...
- 大神Java8写了一段逻辑,我直呼看不懂
业务背景 首先,业务需求是这样的,从第三方电商平台拉取所有订单,然后保存到公司自己的数据库,需要判断是否有物流信息,如果有物流信息,还需要再进行上传. 而第三方接口返回的数据是 JSON 格式的,其中 ...
- python中函数的参数:必传参数(位置参数)、默认值参数、参数组传参、关键字传参
1.必传参数也叫做位置参数,因为必填,也必须对应位置 2.默认值参数如上图的word 3.参数组参数:传进去的是0个.或多个value的形式,,,和位置参数有点像,只传value值,但是没有限制个数 ...
- [LeetCode]394. 字符串解码(栈)
题目 给定一个经过编码的字符串,返回它解码后的字符串. 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次.注意 k 保证为正整数. ...
- 不再用上官网,自己部署一套ElementUI官方最新文档
ElementUI官方的访问速度一直很慢,公司内网也无法进行外网访问.故研究了下最新的ElementUI API(2.13.2)部署教程. 先上效果图 ElementUI文档部署过程 到github下 ...
- 必应API接口nodejs版
近期,在研究百度.必应.API等的url提交API时,发现有用Go语言做工具的大佬的分享 利用 API 自动向搜索引擎提交网址(Go语言版) - pyList. 其中提到bing API提交方法,并给 ...
- 解读Java NIO Buffer
从jdk1.4开始,java中引入了nio包,提供了非阻塞式的网络编程模型,提供网络性能.nio中核心组件有三个:channel.buffer.selector.这里主要探讨buffer的概念和使用. ...
- HBase启用压缩
1. 压缩算法的比较 算法 压缩比 压缩 解压 GZIP 13.4% 21MB/s 118MB/s LZO 20.5% 135MB/s 410MB/s Snappy/Zippy 22.2% 172MB ...