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)

  

注意兩者的區別

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM