• Django你需要知道的事


    MTV模型与MVC模型

    MVC

    Model(模型):是应用程序中用于处理应用程序数据逻辑的部分。     通常模型对象负责在数据库中存取数据。

    View(视图):是应用程序中处理数据显示的部分。     通常视图是依据模型数据创建的。

    Controller(控制器):是应用程序中处理用户交互的部分。     通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

    MTV

    M 带包模型(Model) 负责业务对象和数据库的关系映射(ORM) T 代表模板(Template) 负责如何把页面展示给用户(html) V 代表视图 (View) 负责业务逻辑 并在适当时候调用Model和Template

    queryset数据类型的特性

    可以切片使用(不支持负的索引)

    可迭代

    惰性查询

    缓存机制

    queryset数据类型的方法

    create()

    p = Person(name="WZ", age=23)

    p.save()

    .all()

    get()

    exclude()

    valeslist()

    orderby()

    级联删除不等于同时删除

    级联删除表示主表记录删除,对应表记录 同样删除

    一对多 , 一对一 时候用,

    user = models.ForeignKey(User, blank=True, null=True, on_delete=models.CASCADE)

    cookie与session的运行机制

    1.cookie数据存放在客户的浏览器上,session数据放在服务器上

    2.cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗 考虑到安全应当使用session。

    3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能 考虑到减轻服务器性能方面,应当使用COOKIE

    4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。 cookie 和session 的联系

    session是通过cookie来工作的,可以考虑将登陆信息等重要信息存放为session,其他信息如果需要保留,可以放在cookie中

    
    

    反向解析

    作用:防止硬编码,便于维护

    path("login/",views,login,name = "login")
    
    模板 :{% url "login"  参数 %}
    视图 :redirct(reverse(login),args=参数)

    Q查询的两种使用方式

    book.object.filter(Q(name = ...)|Q(user = ...))
    q=Q()
    q.chidnen.append(...)
    book.objects.filter(q)

    请求头contentType的作用

    content-type请求头是干吗的呢,http请求头有四种类型,分别是通用头部,请求头部,响应头部以及内容头部,首先,我们要弄清楚,

    content-type是属于内容头部,既然是内容头部,那这个请求头是用来向接收端解释传递的该内容主体的,content-type的取值是告诉服务端,你传递过去的内容是啥,你应该准备好如何接收

     

    Django请求生命周期

    rbac表结构

    User 用户,

    Role 角色 ,

    Permission 权限,

    表关系:

    角色和 权限 一对多 和用户一对多

    crm的查询语法

    min()

    max()

    conut()

    avg()

    向服务器发送一个json数据

    
    
    $.ajax({
            url:'${pageContext.request.contextPath }/rest/jsonBody',
            type:'POST',
            dataType:'json',
            contentType:'application/json;charset=UTF-8',
            data:JSON.stringify(data),
            success:function(data, status){
                console.log(data);
            }
        });
    
    

    中介模型

    
    

    多对多字段 创建的时候 Djiango会自动帮我们创建第三张表满足不了我们的需求,可用中介模型使用自定义的第三张表 添加字段。

     

    
    

    ForeignKey中的db_constraint参数

    db_constraint 唯一约束

    
    

    db_constraint = True 方便查询 约束字段

    
    

    db_constraint = fales 不约束字段 同时也可以查询

     

    用户认证组件

    
    

    用户登陆的时候

    注册对象auth.login(request,当前登陆人对象)

    if 获取 request.user 是否为空

    登陆成功

    优点:可用中间件 校验 ,可全局用

     

    
    

     




     
  • 相关阅读:
    python基础知识(集合)
    python基础知识(字典)
    python基础知识(循环语句)
    Python基础知识(程序结构)
    python基础知识(正则表达式)
    python基础知识(字符串)
    jmeer_09_JDBC Request
    性能总结_01
    性能02_
    jmeter_07正则提取器_JDBC_Connection_Configuration
  • 原文地址:https://www.cnblogs.com/jiaqi-666/p/9401964.html
Copyright © 2020-2023  润新知