美文网首页
audition 2

audition 2

作者: 李小萌mmm | 来源:发表于2018-12-17 19:12 被阅读0次
    1.F 和 Q 的作用?
    F查询主要用来获取原数据进行计算,对象个常数之间的加减乘除和取模的操作
    例如:
    读goods表中每件商品在原价格的基础上增加10元
    GOODS.objects.update(price=F('price')+10)
    
    Q查询主要用来复杂查询
    Q(条件1)|Q(条件2)或
    Q(条件1)&Q(条件2)与
    Q(条件1)&~(条件2) 非
    例如:
    查询id等于3或者标题是go的书
    BOOK.objects.filter(Q(id=3)|Q(title='go'))[0]
    
    
    2.django 中csrf的实现机制?
    (1).在用户访问时,django反馈给用户的表单中有一个隐含字段csrftoken
    这个值是在服务器端随机产生的,每一次提交表单都会产生不同的值
    (2).服务器校验这个表单的csrftoken是否和自己保存的一致,来判断用户的合法性
    (3).当用户被csrf攻击,从其他站点发送精心编制的攻击请求时,
    由于其他站点不可能知道隐藏的csrftoken字段的信息,
    这样从服务器就会校验失败,攻击被成功防御
    具体配置如下:
    在template中添加{%csrf_token%}标签
    
    3.为什么要使用django rest framework框架?
    在编写接口时可以使用也可以不使用
    不使用:也可以用django的CBV来实现,开发者编写的代码会更多一些
    使用:内部帮助我们提供了很多方便的组件,我们通过配置就能完成相应的操作
    '序列化'可以做用户请求数据校验+queryset对象的序列化成为json
    '解析器'获得用户请求数据request.data 会自动根据content-type请求头的不能对
    数据进行解析
    '分页'将从数据库获得到的数据页面进行分页显示
     还有其他组件
     '认证' '权限' '访问平率控制'
    
    4.为什么要使用django rest framework框架?
    在编写接口时可以使用也可以不使用
    不使用:也可以用django的CBV来实现,开发者编写的代码会更多一些
    使用:内部帮助我们提供了很多方便的组件,我们通过配置就能完成相应的操作
    '序列化'可以做用户请求数据校验+queryset对象的序列化成为json
    '解析器'获得用户请求数据request.data 会自动根据content-type请求头的不能对
    数据进行解析
    '分页'将从数据库获得到的数据页面进行分页显示
     还有其他组件
     '认证' '权限' '访问平率控制'
    
    
    
    5. Flask框架的优势?
       Flask自由灵活可扩展性强,透明可控,第三方库选择面广
       开发时可以结合最流行强大的Python库
    
       Flask蓝图的作用?
       blueprint把实现不同功能的module分开,也就是把一个大的App
       分割成各自实现不同功能的module
       在一个blueprint中可以调用另外一个blueprint的视图函数,但要加相应的blueprint名
    
       Flask框架依赖组件?
       依赖jinja2模板引擎
       依赖wrkzurg协议
    

    相关文章

      网友评论

          本文标题:audition 2

          本文链接:https://www.haomeiwen.com/subject/wrnckqtx.html