增删查改(多)
1.1 这次我还是用layui来做,上次在(单)那里我已经做出了先头船,所以我这次就不做了。如果不知道的就去到(单)那里的开头看吧。那么首先是他的多表查询数据,只有查询出数据并填充到视图那边,让数据显示在表格上,那么对后面的三个操作就简单多了。其实多表和单表差不多是一样的,如果没有下拉框的数据要查询的话,那么就只剩下表与表的连接查询了。如我要查询的多表是一个学生表。
1.2 而它的内容有些麻烦,因为我们要的数据,并不是一个表就能搞定的,所以需要通过连表来查询出,来自于各个表的数据,如开头是学生表,连接学院表查学院ID,又连接专业表查专业ID,又连接年级表查年级ID,又连接班级表查班级ID,又连接用户表查用户ID,当然还要排序倒序一下,让它们在页面上显示的更好看。而在select就是通过连接了每一个我要的表所得的每条数据。如果怕意外,就如我的select旁边的studentcha那样新封装一个类放进你要查询的每条数据后,就不用怕意外了,是要加string类型。所以说多表中的查询是在我的理解中它的步骤是最简单的,要什么,就连接哪个表来查询你所要的数据,。如下图:
1.3 但是这次的小括号除了固定的layuiTablePage之外,还要带上几个下拉框的小孩子一起,三个int类型的学院,专业和年级的下拉框,一个string类型的查找功能。他们是通过上图所查询的数据后,在他们后面所判断的。只比单表的多了这四个下拉框的判断。后节如单表那样分页和数据的赋值,再返回到页面就可以显示数据了,不过视图还要用layui渲染好表格后调用这个方法就行了。如下图:
1.4 既然已经查询好了,第二步就是新增了。而新增所需要的参数是在多表里只存在唯一的数值,不能有重复的,所以新增的小括号传来的参数就是学生表和用户表。因为他们的账号和学号是不会出现重复的,而其他是会有重复的,因为我后面要进行各种判断,所以不能传他们的过来。否则数据就会出错。后面的是学生的图片的参数,而图片不是我这次的主要内容。新增的操作还是和单表差不多一样的,只是判断的条件更多了一些,逻辑上还是一样,判断他是否有重复,或者没有写进内容,又或者写的内容不太正常,所以步骤一样还是一样的。不过保存的时候还要判断所连接的各表是否有保存到数据。如下图:
1.5 新增完了,就到最麻烦的修改了。又要回填数据,才能修改保存数据。首先是数据回填,也是传主要的ID过来,查询出唯一一条他的ID值和需要回填到弹出层的值,之后将查询出的值返回到页面进行赋值就可以了。如下图:
1.6 数据回填的方法已经写好了,现在是修改他的数据保存下来的方法了,而无论他的怎样变都不会少很多,它跟新增一样,逻辑是一样的,只不过判断的时候,要除判断他本身的ID之外,不然永远都会有一条数据重复存在,最后呢就是多了在这个方法上直接赋值给页面上的数据,之后才是判断是否保存成功,否则失败。
1.7 增改查的方法已经完成了,最后就是最简单的删除数据的方法操作了,删除多表时就是你真正连接了多少张表,就删除多少张表,什么数据都不用去查询,只需要找到每一张表的ID值,之后移除掉它就可以了。