python+Django CRM客户关系管理系统开发(十二)--action功能开发

一、本节目标

前几节我们开发数据展示,增删改查,本节开发批量操作功能。

 

二、功能分析

1、admin有一个默认的action操作框,可以从下拉列表中选择对应的操作,其实是通过actions这个参数控制的。

 

 其实就是通过actions这个项目控制的,在admin.py里添加actions,写一个change_status,然后自己写一个函数,改变学生的状态:

 

 

 

 

 

 

 通过执行这个操作,即可将选中的学生状态改变:

 

 

 

 

 

三、功能开发

1、首先在baseadmin里添加actions

 

 

2、在自定义admin里添加actions,批量修改学生状态为已报名

 

 

3、这么添加目前肯定不会生效,因为没有开发多选功能,页面上也没有操作的地方,接下来开发页面,以及多选功能:

页面上先添加一个下拉选择框:

 

 

 

 

 

 

 

4、在thead与tbody里,分别前边加一个复选框

 

 

 

 

 

 

此时多选框已经出来了:

 

 

5、开发全选/取消全选功能

<script>

function SelectALLObjs(ele) {

    if ($(ele).prop('checked')){
        $('input[row-select]').prop('checked',true)

    }else{
         $('input[row-select]').prop('checked',false)
    }
}

</script> 

 

在前端引用这个js代码,记得引入jquery文件

 

此时全选功能完成:

 

 

6、此时可以全选了,那我们接下来需要做的就是把全选到的项目,传到后端,进行操作

 

 7、此时action功能就完成了

 

 

8、我们可以发现admin有一个默认的删除的action,我们也做一个。

 

 

既然默认的,就在baseadmin里写一个默认的action:

 

 

前端修改:

 

 

视图函数修改:

 

 

 

9、页面显示:

 

posted @ 2020-11-06 19:16  抬头微笑向前  阅读(281)  评论(0编辑  收藏  举报