如何同时实现讲师只查看自己的课程、机构只查看本机构课程

来源:16-4 如何让讲师可以登录xadmin并过滤列表页数据

weixin_慕九州2465741

2020-05-14

我根据老师的方法对CourseOrg表也添加了一对一的user字段,实现了机构用户登录后只查看本机构讲师的功能。
但是我还希望机构还能查看到属于本机构的课程,并且看不到其他机构的课程。
所以我对代码做了以下修改
图片描述
这个时候如果是使用讲师用户登录的话是不会出错的,但是使用机构用户时会报错:
“UserProfile has no teacher.”
如果把if判断换成“if not self.request.user.courseorg”的话,机构用户登录不出错
讲师用户登录会报错:“UserProfile has no courseorg.”
请问老师,遇到这个情况要怎么解决?

写回答

1回答

bobby

2020-05-15

这个问题很简单, 是因为如果某个用户登录后,并没有一条teacher记录关联了这个用户那么 反向通过user.teacher获取就会抛出异常,所以//img.mukewang.com/szimg/5ebe5a9b090eec3808580437.jpg 这个地方用try except处理一下就行了

0
2
名称已被占用啊
回复
weixin_慕九州2465741
同许,你的功能实现成功了么,能不能粘贴一下相关的代码,我学习一下。
2021-05-26
共2条回复

Django+ xadmin 开发在线教育网站

一套通用的技术组合拳,助你解决大部分Python类网站后端问题

1911 学习 · 2149 问题

查看课程