django根据不同用户角色设置数据的访问权限
xadmin中的用法:
class NewCourseAdmin: list_display = [‘name‘, ‘detail‘, ‘degree‘, ‘learn_times‘, ‘students‘] list_editable = [‘degree‘, ‘desc‘] def queryset(self): qs = super().queryset() if not self.request.user.is_superuser: qs = qs.filter(teacher=self.request.user.teacher) return qs xadmin.site.register(Course, NewCourseAdmin)
admin中的用法:
class NewCourseAdmin(admin.ModelAdmin): list_display = [‘name‘, ‘detail‘, ‘degree‘, ‘learn_times‘, ‘students‘] list_editable = [‘degree‘, ‘desc‘] def get_queryset(self,request): qs = super().get_queryset(request) if not self.request.user.is_superuser: qs = qs.filter(teacher=self.request.user.teacher) return qs admin.site.register(Course, NewCourseAdmin)
注意两者的区别