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):从右开始以_号分割,分割一次

    

    

python全栈开发day87~91-整个流程梳理、CRM功能、知识点梳理的更多相关文章

  1. python全栈开发-Day2 布尔、流程控制、循环

    python全栈开发-Day2 布尔 流程控制 循环   一.布尔 1.概述 #布尔值,一个True一个False #计算机俗称电脑,即我们编写程序让计算机运行时,应该是让计算机无限接近人脑,或者说人 ...

  2. Python全栈开发之---输入输出与流程控制

    Python简介 python是吉多·范罗苏姆发明的一种面向对象的脚本语言,可能有些人不知道面向对象和脚本具体是什么意思,但是对于一个初学者来说,现在并不需要明白.大家都知道,当下全栈工程师的概念很火 ...

  3. Python全栈开发【基础一】

    Python全栈开发[第一篇] 本节内容: Python 的种类 Python 的环境 Python 入门(解释器.编码.变量.input输入.if流程控制与缩进.while循环) if流程控制与wh ...

  4. python 全栈开发之路 day1

    python 全栈开发之路 day1   本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可 ...

  5. 老男孩最新Python全栈开发视频教程(92天全)重点内容梳理笔记 看完就是全栈开发工程师

    为什么要写这个系列博客呢? 说来讽刺,91年生人的我,同龄人大多有一份事业,或者有一个家庭了.而我,念了次985大学,年少轻狂,在大学期间迷信创业,觉得大学里的许多课程如同吃翔一样学了几乎一辈子都用不 ...

  6. python 全栈开发,Day99(作业讲解,DRF版本,DRF分页,DRF序列化进阶)

    昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确. - API (IOS,安卓,PC,微信小程序...) - vue.js等框架编写前端时,会比之前写jQuery ...

  7. 学习笔记之Python全栈开发/人工智能公开课_腾讯课堂

    Python全栈开发/人工智能公开课_腾讯课堂 https://ke.qq.com/course/190378 https://github.com/haoran119/ke.qq.com.pytho ...

  8. python全栈开发目录

    python全栈开发目录 Linux系列 python基础 前端~HTML~CSS~JavaScript~JQuery~Vue web框架们~Django~Flask~Tornado 数据库们~MyS ...

  9. Python全栈开发【面向对象进阶】

    Python全栈开发[面向对象进阶] 本节内容: isinstance(obj,cls)和issubclass(sub,super) 反射 __setattr__,__delattr__,__geta ...

随机推荐

  1. <第一站>人生的第一个博客

    在畅畅的疯狂暗示下(“最好”建个博客),我决定在博客园开通我的博客,在此记入我从3月23起的所学所想.在他的提醒之前,我曾经断断续续的在日记本上,手机备忘录里记录过我的学习情况和心路历程,总的来说,自 ...

  2. javascript for循环 日期 select

    2016年12月28日 20:01:54 星期三 html: <a href="aaaa">AAAA</a> <a href="bbbb&q ...

  3. 使用第三方组件(django-redis)创建连接池

    settings里面: ##redis配置CACHES={ 'default':{ 'BACKEND':'django_redis.cache.RedisCache', 'LOCATION':'red ...

  4. 6)协程三( asyncio处理并发)

    一:使用 asyncio处理并发 介绍 asyncio 包,这个包使用事件循环驱动的协程实现并发.这是 Python 中最大也是最具雄心壮志的库之一. 二:示例 1)单任务协程处理和普通任务比较 #普 ...

  5. android系统下消息推送机制

    一.推送方式简介: 当前随着移动互联网的不断加速,消息推送的功能越来越普遍,不仅仅是应用在邮件推送上了,更多的体现在手机的APP上.当我们开发需要和服务器交互的应用程序时,基本上都需要获取服务器端的数 ...

  6. PID控制器开发笔记之十:步进式PID控制器的实现

    对于一般的PID控制系统来说,当设定值发生较大的突变时,很容易产生超调而使系统不稳定.为了解决这种阶跃变化造成的不利影响,人们发明了步进式PID控制算法. 1.步进式PID的基本思想 所谓步进式PID ...

  7. 【MySql】Group By数据分组

    GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. 因为聚合函数通过作用于一组数据而只返回一个单个值, 因此,在SELECT语 ...

  8. ORM 对象关系映射

    ORM (object relation mapping) 就是将对象数据转换为sql语句并执行 对象关系映射框架 orm 需要做的事情 1 生成创建表的语句 2 插入数据的语句 3 删除数据的语句 ...

  9. django rest framework(3)

    目录 一.版本 二.解析器 三.序列化 四.请求数据验证 一.版本 程序也来越大时,可能通过版本不同做不同的处理 没用rest_framework之前,我们可以通过以下这样的方式去获取. class ...

  10. LeetCode(119):杨辉三角 II

    Easy! 题目描述: 给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行. 在杨辉三角中,每个数是它左上方和右上方的数的和. 示例: 输入: 3 输出: [1,3,3,1] 进阶: ...