首页 > 其他分享 >工程:上课时间调整模块修改

工程:上课时间调整模块修改

时间:2023-03-23 19:34:24浏览次数:37  
标签:上课 分页 数据 修改 模块 重写 调整

上课时间调整模块修改1(2023-02-27)

序号 修改任务 完成情况
1 分页功能(当某页只剩一行数据时,点击删除时应该把总页数减一)
2 按照调整前的上课时间排序(默认降序)
3 增加表格展示的排序功能
4 添加数据页面空数据不能点击添加按钮
5 修改数据页面空数据判断和数据未改动之前修改按钮不能点击
6 数据日期的逻辑判断(调整前的日期应该比调整后小)
7 某天的课程调休只能有一条数据的逻辑判断实现(2022-08-31的课程调整只能出现一次,否则出现多条会冲突)
8 大屏展示模块的修改(后端)

问题:

  • 会不会有调休提前上课的情况,比如(把下周二的课调休到本周末)

上课时间调整模块修改2(2023-03-03)

序号 修改bug 完成情况
1 添加日期逻辑判断(调整后的日期与已有数据中的调整前的日期冲突等情况)
2 排序功能修改(把单页数据排序修改为全体数据排序,使用Django REST framework的排序功能OrderingFilter
3 尾页删除最后一条数据的判断写在后端返回的分页信息里(paginations.py文件)
4 多个list/的重复网络请求bug修改

问题:

  • 第三个功能实现时涉及到要重写分页类里的方法paginate_queryset()这里涉及到两种实现方法,代码中用到了第二种来实现。
    • 第一种是在自己创建的paginations.py文件中创建的分页类继承于PageNumberPagination要重写上面的方法则可以通过定义同样的函数名和参数来重写它,在自己写的函数中将数据进行先一步处理再通过调用父类方法的方式(super.paginate_queryset(queryset, request1, view))将处理后的数据传入即可。ps:可是在实现过程中发现url传入的参数在request中是不可以被修改的,所以其中的分页参数也无法得到修改,故而无法实现功能。
    • 第二种则是在自己创建的paginations.py文件中创建的分页类继承于PageNumberPagination要重写上面的方法则可以通过定义同样的函数名和参数来重写它,在自己写的函数中将父类的函数实现拷贝过来,然后在父类函数的基础上进行关键步骤的数据处理,从而达到对分页参数的判断。
  • 第三个功能实现成功使用了上述第一种方法,重载函数修改request中的参数,再通过调用父类方法完成数据处理。

上课时间调整模块修改3(2023-03-03)

序号 修改需求 完成情况
1 url.py文件中匹配请求的url方式从path()修改为正则表达式url()
2 后端处理返回调休时间数据时将备注中的信息进行切割,返回长度为10的字符串加省略号。
3 前端将修改和删除功能按钮修改为字体
4 前端删除数据确认弹窗+删除成功提示
5 前端修改和添加弹窗的布局修改(将调整前后的日期选择框横向放在一起)
6 弹出窗口标题字体加粗显示
7 弹窗中判断选择的日期是否存在逻辑修改(原本的逻辑是拿所有数据进行比较,当数据量多于一页时,通过get得到的数据只有第一页的数据(因为没有传入分页信息,所以是默认升序的第一页数据),出现判断bug)

实现:

  • 实现第二个需求:此处通过修改AdjustTimeDetailSerializerAdjustTimeListSerializer两个类,第一个是详细展示的类,用来在点击修改的时候将备注信息完全显示,也就是说该类会有完整的数据;第二个是用来在列表页面展示的类,该类继承第一个类,通过重写to_representation()方法实现将备注字段的信息进行修改切割加上省略号的功能。
  • to_representation()serializer在实例化字段属性的时候可以通过to_representation()方法可以添加和修改字段的内容。

标签:上课,分页,数据,修改,模块,重写,调整
From: https://www.cnblogs.com/hhhhuaz/p/17248591.html

相关文章

  • ggplot2中修改图例的位置
     001、默认绘图bp<-ggplot(PlantGrowth,aes(x=group,y=weight,fill=group))+geom_boxplot()##绘图bp##输出图片  002、上......
  • ggplot2绘图中修改图例的标题
     001、正常绘图library(ggplot2)bp<-ggplot(data=PlantGrowth,aes(x=group,y=weight,fill=group))+geom_boxplot()bp##显示绘图结果  002、修......
  • ggplot2中绘图修改图例的顺序
     001、直接绘图效果:library(ggplot2)bp<-ggplot(data=PlantGrowth,aes(x=group,y=weight,fill=group))+geom_boxplot()##绘图bp##显示绘图结果绘......
  • Word:修改页边距后中间出现断页
    这是因为只修改了某一页的页边距,需要将其应用到整篇文档 ......
  • Fiddler修改响应体
    方法1将请求从左侧列表中,拖入AutoResponder中。然后右键规则,点击编辑 修改后点击save方法2在AutoResponder中选择CreateNewResponse也可类似方式1创建一个响应......
  • logging模块
    #coding=utf-8importloggingfromloggingimporthandlersimporttimedefmylogger():#创建一个记录器,命名为testlogger=logging.getLogger('test')......
  • 让CAD图纸加密、锁定防修改so easy!
    作为一名CAD设计师,有时不仅需要为了创新设计、快速制图而绞尽脑汁,还需要为了图纸泄密、客户拿图不付款等图纸数据安全问题而斗智斗勇、耗费心力。但面对层出不穷的“套路深......
  • 通过命令修改git提交的注释信息
    1.修改最新一条commit注释信息通过gitcommit--amend命令修改注释信息,然后:wq进行保存,再重新提交2.修改多条commit注释信息输入命令:gitrebase-iHEAD~5......
  • mac m2. qume 修改docker镜像地址
    进入quemucolimassh查看系统umame-acat/etc/os-releasen修改镜像地址sudovim/etc/dcoker/daemon.json#加入一下地址"registry-mirrors":["h......
  • 可修改性
    可修改性 优点缺点优点,它使得系统更容易进行变更,从而使得系统更加灵活和适应性更强。这样,当用户的需求发生变化时,系统可以快速地进行调整,以满足用户的需求。 缺点......