zoukankan      html  css  js  c++  java
  • CRM项目总结

    web无外乎是对地址的访问

    后台生成地址,将数据和地址发送到前台,放在前台适当的位置

    views可以直接在urls.py中写
    函数加括号的优先级最高
    类(),实例化对象
    request.POST只能解析urlencoded编码,不能接受json格式数据,json要从request.body中取.

    如何自动生成针对特定模型表的增删查改操作?
    获取模型表所在应用名,拼接上模型表小写名,加上操作(二级路由不能写在StarkSite中,不能针对不同的configobj来生成配置类对象)

    前端根据不同的对象.属性,如何根据不同对象自动获取其属性名?
    获取对象和对象要显示的属性列表,表头:self.model._meta.get_field('%s' % lis).verbose_name / 表体:getattr(对象,field)

    如何将所有的表都设置上自定义的属性列?
    将原有属性列表传入,在源码中重新生成一个要显示的属性字典

    如何判断是表头还是表体?(编辑字段在表头中是字符串,在表体中是a链接)
    在函数中加字段:isheader = False,来控制走不同的代码

    如何通过点击不同对象的编辑删除按钮,获取到对应的路由?
    反向解析,在页面加载的时候,就已经完成了路由的生成,app名/表名/操作名/对象id,而不是点击的时候才生成路由

    如何实现display_links功能?.
    display_links实际就是将字段改为a链接,地址为编辑页面

    如何实现编辑页面,初始状态就渲染出数据?
    modelform可以简单实现
    在前端加判断,如果当前的publish== obj.publish 或 authors in authors_list ,说明是编辑

    如何保存搜索条件?
    每次的请求都会通过后台,在后台拼接数据,重新返回给前台
    request.GET,获取搜索条件,import copy ,deepcopy,request.GET.urlencoded()转换为name=xxx&pwd=xxx形式

    如何封装类?
    将所有需要的参数当做初始化参数传入,变为类的一个属性

    如何实现查询表,并且是模糊查询?
    Q对象,append入字段和查询条件,修改查询为或关系,queryset.filter(q)

    如何实现保存搜索框查询条件?
    保存查询条件,返回去前台,value = 后台返回数据

    如何实现批量处理?
    获取批量id:request.post.getlist("name"),checkbox自动传选中id
    批量操作:查询出来选中的queryset对象,直接执行操作

    如何实现联合查询地址?
    deepcopy,得到字典,重新添加新的值,urlencoded将结构变为 name = chuck&age = 18

    为什么 href="?name = chuck",就可以直接访问地址?
    浏览器会默认将地址拼接,然后发送get请求,get请求到后台之后取出来数据,用数据进行查询

    如何实现联合查询?
    q = Q().children.append((filter_field,field_val)) :append()必须是用括号包起来
    queryset.filter(q)

    如何实现权限管理?

    权限本质上就是是否能够访问地址,---stark/app/user/edit/(d+)/   ;可以将权限地址放在session中,前台将要访问的地址和后台传过来的地址匹配,能匹配上就说明有访问权限。

    如何实现权限展示?

    后台获取到当前用户的权限数据,通过session将需展示的权限名字,和权限地址发送到前端。

    权限中间件

  • 相关阅读:
    数据库创建索引后如何查看是否生效
    两种动态代理的区别
    zuul请求过滤
    intellij idea 中 Job Debug特别缓慢问题
    vue路由注册及创建
    vue.config.js配置文件
    TypeScript配置文件
    如何发布自己的npm安装包
    npm常见命令
    通过foreach的方式批量插入
  • 原文地址:https://www.cnblogs.com/xuechengeng/p/10778894.html
Copyright © 2011-2022 走看看