2
You should override get_queryset
, not queryset
. The method was renamed from queryset
to get_queryset
in Django 1.6.
def get_queryset(self, request):
qs = super(FilterUserAdmin, self).get_queryset(request)
if request.user.is_superuser:
return qs
return qs.filter(user=request.user)
Note that you do not need to use getattr
when checking if getattr(obj, 'user', None) is None:
, you can simplify it to if obj.user is None
.
Source:stackexchange.com