项目中删除功能

来源:互联网 发布:网络推广的案例 编辑:程序博客网 时间:2024/06/15 18:31

最近修改公司上海立达项目其中的一个排课申请bug,如下:

教务排课管理列表中的数据是从数据库表timetable_self_course中查询数据


但是此表中的主键被其他四张表引用为外键看实体类比较明显

如果不将这4张表中对应的信息删除,则无法删除本表中的任何数据,会报1451错误,我网上找了很多办法,其中有一种是进行级联删除,但是我发现已经进行了级联删除(图中cascade = { CascadeType.REMOVE })。之后我又想到一种方法是进行假删除,给表加一个删除字段,点击删除的时候改变本字段的值(0代表未删除,1代表已删除),这样仍有一个问题就是在这里进行假删除,然后根据删除字段再进行查询是没有任何问题,但是在项目的其他地方如果也要查询本表中的内容,我们仍要根据删除字段进行查询,你要在项目中找到这个功能很困难。最终我问了项目组长,他给了我一种解决方法就是:前端列表循环的时候判断:如果有被以上四个任一个引用,显示已发布,都没有引用显示删除按钮。其实也就是不显示删除按钮换一个说法就可以了。

原创粉丝点击