django的相关小记录

以下内容能够在百度的时候做更详细的查看,我在这里只是对自己的知识作个简单的记录和复习。

如果不熟悉django的,请去django的基础教程里面做查看,当然我这里没有基础教程。

 

一、访问流程

    对于一个请求程序在django的处理流程

    客户端(浏览器)-->wsgi-->中间件-->路由视图-->model/orm-->response-->中间件-->wsgi-->客户端(浏览器)

 

二、相关流程概述和功能描述

1、客户端

   即浏览器,不做过多解释

2、wsgi

    wsgi是将python服务器程序连接到web服务器的通用协议。需要结合看一下uwsgi。

3、中间件

 在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法。位置在settings.py的MIDDLEWARE_CLASSES 变量

意思就是django在处理相关请求的时候,处理开始前和处理结束后都回去中间件那里执行以下中间件。做状态查看和异常结果反馈。

 

4、路由视图

urls.py 和views.py,不做解释

 

5、models/orm

数据库的处理和相关操作,django有自己直接对接数据库的方法

以下是查询,插入方法知道的就一种,不多说了

 

#<1> all():                  查询所有结果 
    #<2> filter(**kwargs):       它包含了与所给筛选条件相匹配的对象。获取不到返回None
    #<3> get(**kwargs):          返回与所给筛选条件相匹配的对象,返回结果有且只有一个。获取不到会
    抱胸
    #如果符合筛选条件的对象超过一个或者没有都会抛出错误。
    #<4> exclude(**kwargs):      它包含了与所给筛选条件不匹配的对象
    #<5> order_by(*field):       对查询结果排序
    #<6> reverse():              对查询结果反向排序 
    #<8> count():                返回数据库中匹配查询(QuerySet)的对象数量。 
    #<9> first():                返回第一条记录 
    #<10> last():                返回最后一条记录 
    #<11> exists():              如果QuerySet包含数据,就返回True,否则返回False
    #<12> values(*field):        返回一个ValueQuerySet——一个特殊的QuerySet,运行后得到的并不是一
    系model的实例化对象,而是一个可迭代的字典序列
    #<13> values_list(*field):   它与values()非常相似,它返回的是一个元组序列,values返回的是一个
    字典序列
    #<14> distinct():            从返回结果中剔除重复纪录

 

三、django对高并发的方法

    1、直接配置NGINX,具体配置方法百度就好了

    2、配置Apache,具体方法麻烦也百度了

   3、优劣说明,低并发Apache比NGINX好,高并发NGINX完虐Apache,所以直接配置NGINX。

 

四、django的安全应对方法

  1、在form表单中添加{csrf_token},django在给浏览器cookie的时候,会生成一个CSRF_token值,表单的提交的时候加上{csrf_token},会携带这个值,去做验证。

2、就是一些其他的了,如敏感操作,重要数据和钱财交易,要做确认的。

五、django是MTV模式

models数据库、templates模板、views业务逻辑视图处理

六、django内置组件

1、admin.py,后台配置管理

2、models.py,负责业务对象与数据库的对象(ORM)

3、forms.py,1.生成HTML代码2.数据有效性校验3校验信息返回并展示

4、分页器,这个看使用场合,通俗点就是查询数据库指定序列的内容数据,上一页,下一页的。

5、用户认证,django有自带的一个表,user_auth,通过方法可直接验证用户登录和密码修改,不过也要看使用场合,这个功能较为单一,不易扩展。看情况使用。

6、cookie和session,emmmm,不说。

 

七、django缓存

django有自带的缓存,记得要在settings.py里面进行设置

1、数据库缓存

2、内存缓存

3、磁盘缓存

4、redis缓存。

缓存后面再做详细记录

 

  

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值