随笔分类 -  python开发-项目: CRM项目

摘要:############ stark组件的分析1,单利模式的使用2,路由系统的使用3,stark组件的注册类,4,stark组件的动态生成url5,yield生成器的使用6,反射的使用7,装饰器的使用stark组件1,列表,显示列和数据,2,编辑3,新增4,删除5,搜索6,分页7, ######## 阅读全文
posted @ 2020-11-03 22:38 技术改变命运Andy 阅读(102) 评论(0) 推荐(0) 编辑
摘要:############# 权限组件1,权限是每一个后台都需要的,2,这个组件做成一个公共的组件,stark组件,1,这是一个通用的增删改查组件,2,很大是看了admin的源码做的,3,你到公司,会发现没有公司用django的admin,4,kingadmin还是有很多不足的地方,创造力不错,5,要 阅读全文
posted @ 2020-10-28 18:23 技术改变命运Andy 阅读(102) 评论(0) 推荐(0) 编辑
摘要:################## 老师的角色, 每天上课要创建上课记录,哪一个班级,哪一节课,然后根据这节课创建每一个学生的上课记录, 这个时候一个班级很多的人,所以需要批量创建,需要一个方法:bulk_create然后实现一个可以在列表修改状态的功能, ################# 学员 阅读全文
posted @ 2020-10-20 20:22 技术改变命运Andy 阅读(137) 评论(0) 推荐(0) 编辑
摘要:################ 报名是怎么样一个流程? 之前: 1,报名状态之前是可以随便改, 2,报名状态只能是改自己用户的,不能改其他用户的, 之后: 状态不能随便改了, 1,录入了客户之后, 2,销售填写报名表,报什么班级,哪一个客户报的,自动生成一个连接,让学生去填写, 3,学生填写个人信 阅读全文
posted @ 2020-10-19 20:19 技术改变命运Andy 阅读(105) 评论(0) 推荐(0) 编辑
摘要:完成crm用户认证登陆 {% extends 'base.html' %} {% block body %} <div class="container col-lg-offset-4 "> <form class="form-signin col-lg-3 pu " method="post" r 阅读全文
posted @ 2020-10-10 19:20 技术改变命运Andy 阅读(400) 评论(0) 推荐(0) 编辑
摘要:有很多时候都需要前端展示数据库中不存在的字段 怎么做? 比如:有客户,然后需要在右侧加一个报名,这个报名字段就不是数据库的,但是需要这样一个字段按钮,怎么办? 第一步加一个函数, class CustomerAdmin(BaseAdmin): list_display = ["id",'qq','n 阅读全文
posted @ 2020-10-10 17:22 技术改变命运Andy 阅读(282) 评论(0) 推荐(0) 编辑
摘要:权限管理 怎么实现权限的管理呢? 首先是model,这个表继承了权限类, class UserProfile(AbstractBaseUser, PermissionsMixin): '''账号表''' email = models.EmailField( verbose_name='email a 阅读全文
posted @ 2020-09-25 18:31 技术改变命运Andy 阅读(112) 评论(0) 推荐(0) 编辑
摘要:如果用django自带的表,会有局限性, 你每次新建用户的时候需要建两个表的内容,user,userProfile,也就是跑到两个表建内容,没法直接在user中创建, 你每次调用的时候,不能直接写request.user.name,必须要request.user.userProfile.name才可 阅读全文
posted @ 2020-09-24 20:49 技术改变命运Andy 阅读(200) 评论(0) 推荐(0) 编辑
摘要:点击客户库,就要调整到对应的页面客户表,怎么实现? 这个跳转的逻辑是怎么样的? 第一点:前端有include的用法,就是把另一个页面的内容包含到这个页面,但是这里用include是不行的, 因为不是单纯静态的东西,客户表有很多的变量,没有找到变量就会报错, 第二点:点击这个页面的时候,使用ajax跳 阅读全文
posted @ 2020-09-24 16:45 技术改变命运Andy 阅读(125) 评论(0) 推荐(0) 编辑
摘要:实现整个表的只读 第一步:基类里面加一个入口 class BaseAdmin(object): list_display = [] list_filters = [] search_fields = [] list_per_page = 20 ordering = None filter_horiz 阅读全文
posted @ 2020-09-24 10:04 技术改变命运Andy 阅读(119) 评论(0) 推荐(0) 编辑
摘要:现实需求中,会有在编辑的时候有部分字段是只读的,不能修改的,这个功能如何实现? 1,首先是在基类中,增加一个只读字段的配置, class BaseAdmin(object): list_display = [] list_filters = [] search_fields = [] list_pe 阅读全文
posted @ 2020-09-17 20:10 技术改变命运Andy 阅读(209) 评论(0) 推荐(0) 编辑
摘要:如果实现action的功能: 前端: 1,前端要加一个入口,可以选择某一个action,并且执行, 2,前端需要给每一个数据都增加一个复选框,增加js能选中批量操作的数据, 注意只是选择本页的,不是全部的, 怎么把选中的数据传到后台处理呢??? 后端: 3,执行之后后端需要有处理函数 4,要做成可配 阅读全文
posted @ 2020-08-10 19:38 技术改变命运Andy 阅读(197) 评论(0) 推荐(0) 编辑
摘要:删除功能 (1)kingadmin/urls.py urlpatterns = [ url(r'^$', views.index,name="table_index"), url(r'^(\w+)/(\w+)/$', views.display_table_objs,name="table_objs 阅读全文
posted @ 2020-08-10 19:34 技术改变命运Andy 阅读(160) 评论(0) 推荐(0) 编辑
摘要:修改功能实现 思路:1,模仿admin,在每一个数据的第一列,做一个超链接,点击进入修改页面2,增加一个修改页面3,进入页面之后增加一个views来返回数据,4,进入页面之后把字段都展示出来,然后可以修改,一个model,做一个modelform然后在前端修改,这是规则如果我们自己写admin,就要 阅读全文
posted @ 2020-08-10 19:20 技术改变命运Andy 阅读(190) 评论(0) 推荐(0) 编辑
摘要:展示客户列表页面 搜索 第一步:views @login_required def display_table_objs(request,app_name,table_name): print("-->",app_name,table_name) # 这是通过url取到的, #models_modu 阅读全文
posted @ 2020-08-10 18:45 技术改变命运Andy 阅读(126) 评论(0) 推荐(0) 编辑
摘要:展示客户列表页面 排序 排序的逻辑排序这样设计,1,点击每一列可以倒序,再次点击可以正序,通过一个【-】,来控制的2,点击怎么把这个关键值添加到url,点击一列排序,其他列就不排序了,--这是每次进入之后都会渲染一遍页面,没有排序的就是没有排序,下次点击就是正序排列3,排序要加一个url的关键值就是 阅读全文
posted @ 2020-08-10 18:43 技术改变命运Andy 阅读(158) 评论(0) 推荐(0) 编辑
摘要:展示客户列表页面 分页 分页的逻辑分页记得要带上条件, ######## class BaseAdmin(object): ... list_per_page = 20 >这是基类 ... class CustomerAdmin(BaseAdmin): ... list_per_page = 5 > 阅读全文
posted @ 2020-08-10 18:30 技术改变命运Andy 阅读(143) 评论(0) 推荐(0) 编辑
摘要:展示客户列表页面 过滤 过滤 这里面使用了很巧妙的设计思路 使用了很多我不知道的方法,比如:field_obj = admin_class.model._meta.get_field(filter_field)field_obj.get_choices()[1:]总体的思路是1,把过滤字段进行配置2 阅读全文
posted @ 2020-08-10 18:28 技术改变命运Andy 阅读(122) 评论(0) 推荐(0) 编辑
摘要:展示客户列表页面 表头 通过自定义的admin_class类,循环出list_display所有的列 {#kingadmin/templates/kingadmin/table_obj_list.html#} {% extends 'kingadmin/index.html' %} {% block 阅读全文
posted @ 2020-08-10 18:27 技术改变命运Andy 阅读(134) 评论(0) 推荐(0) 编辑
摘要:为什么要自己写一个admin: 为什么不使用django的admin?而要自己写一个呢? 因为你用django-admin不好做定制,不能无缝的嵌入到自己的项目中去,所以现在你就明白了,一定要搞定这个自定义的admin, 因为是你自己写的,所以后面怎么改你就完全懂了, 后面我要用这个kingadmi 阅读全文
posted @ 2020-08-04 18:36 技术改变命运Andy 阅读(121) 评论(0) 推荐(0) 编辑