请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于机构的课程数和学习人数

发现列表页展示的机构的课程数和学习人数是读取数据库中我们自己录入是数据,并不能动态的改变。
希望能实现添加一个新课程后,机构的课程数也能相应的增加。
我在CourseOrg model下定义了一个方法
图片描述
然后在机构详情的view(OrgHomeView)下执行语句:
course_org = CourseOrg.objects.get(id=int(org_id))
course_org.course_nums = course_org.course_nums_count()
course_org.save()
这样子虽然可以实现课程数的更新,但是需要点击该机构详情页后数据才会更新。如果在后台中新增了一个课程后,直接查看机构的课程数是没有变化的,那么我需要在哪个地方调用上述定义的方法,才能实现新增课程后,机构表下的课程数便发生相应的改变?

另外关于机构学习人数的自动变更要如何实现?
我目前的思路是说 先定义一个方法,在方法中获取该机构的所有课程,然后取出各个课程的学习人数,将其相加后的值返回。
然后调用该方法,令course_org.students = 返回值。
但是要如何逐个取出该机构的课程,并获取各个课程的学习人数,这一点我不太清楚要怎么实现,同样的,在哪一个地方去调用这个方法才能实现实时更新也不清楚。

正在回答 回答被采纳积分+3

1回答

提问者 weixin_慕九州2465741 2020-05-16 13:13:32

学习人数的问题已解决!,但是课程数能否实现后台添加后直接更新?(目前是需要后台添加后,再到前端访问对应的课程详情页,机构的课程数才刷新)

0 回复 有任何疑惑可以回复我~
  • bobby #1
    可以实现,目前添加数据的途径无非两条,1. viewset添加 2. xadmin添加,第一种添加方式你已经能修改,第二种你在admin中覆盖save_models方法添加自己的逻辑就行了,这些在xadmin进阶中会讲解的
    回复 有任何疑惑可以回复我~ 2020-05-17 09:32:23
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信