python全栈开发day87~91-整个流程梳理、CRM功能、知识点梳理

1.流程

 1. stark组件

  1. 启动

  2.注册

  3.url设计

  4.视图函数设计

    1.展示数据头
    2.展示数据
    3.list_display功能实现
    4.list_display_links 功能实现
    5.自定义添加类
    6.批量操作actions  
    7.搜索功能
    8.分页功能
    9.过滤功能
    10.pop功能

 2. 权限管理    

  1. 中间件对访问URL控制(正则,白名单)

     2.session存储权限信息,权限信息的展示  

 3. CRM业务逻辑

  1.初始化数据

     通过actions实现

  2.考勤   

    0.actions 
    1.form表单保存法
    2.select选择ajax法

  3.录入成绩    

    1.ajax
    2.form表单保存法

  4.学生查看成绩 

    通过班级学习记录表生成一个字段点击新生成html和url

    通过highcharts生成表成绩 

2.功能点

 

3.知识点

   1.choices=[(1,'男'),(2,'女')],根据ID获取对应的字段值

    user_obj.get_gender_display()

    

  2. limit_choices_to 限定字段关联范围

  

  

 

  3. 对含choices选项的字段在list_view中不能显示,可以通过自定义列解决:

  

  4. 修改学生成绩,巧妙设计url,针对单表设计二级URL

    在默认配置类中定义函数extra_url(),返回空列表[],extends添加至二级列表temp中,

    学生学习记录配置类中定义extra_url(),添加相应二级URL

  

  

 

  5. templates模板文件查找顺序:

  

  6.什么是web访问权限控制:

    就是含正则表达式的URL

  7.orm外键查询

    不管是外键、还是多对多,既可以通过dept__id=1也可以通过dept =1查询

  8.ORM跨表通过字段或双下划线查询总结

    正向查询:

      对象:直接就是字段名

      双下划线:就是字段名__title

    反向查询:

      没定义related_name:

        对象:表名_set

        双下划线:表名__XX

      定义了related_name

        对象:related_name_set

        双下划线:related_name__XX

 

  9.Q查询新用法

    

        

    默认多条件为且的关系

    里边是二元元组,第一个是字段条件,第二个是值,中间只是省略了引号而已。

   10.保存搜索条件:

    

  11.模型表的_meta获取模型名、App名等属性,通过反射获取表对象的字段值

    

  11.make_safe 函数 不让html代码转义

  

   12. 两个简单语法应用

    request.is_ajax():是否是ajax请求;

    rsplit('_',1):从右开始以_号分割,分割一次

    

 

    

 

 

 

posted @ 2018-08-31 21:25  富0代  阅读(158)  评论(0编辑  收藏  举报
返回
顶部