2
Well,this was what worked finally for me,
class StudentAdmin(admin.ModelAdmin):
def get_queryset(self, request):
qs = super(StudentAdmin, self).get_queryset(request)
if request.user.is_superuser:
return qs
return qs.filter(dept=request.user.department)
0
You can manage permission control in the admin:
class UserAdmin(admin.ModelAdmin):
def has_change_permission(self, request, obj=None):
return self.user_has_permission(request, obj)
def user_has_permission(self, request, obj):
if hasattr(request.user, 'department') and obj is not None:
return request.user.department == obj.dept
return False
You can implement the edit
and delete
permissions the same way.
- [Answered ]-Formset initial choice field
- [Answered ]-Django Querying MongoDB ObjectIds in views from json object
- [Answered ]-How to filter private user to user interactions?
Source:stackexchange.com