Если вы используете 1.1.x, на самом деле очень легко передать пользовательский набор запросов. Все, что вам нужно сделать, это переопределить метод queryset () вашего ModelAdmin. Примерно так:
class ThisAdmin(admin.ModelAdmin):
def queryset(self, request):
"""
Filter the objects displayed in the change_list to only
display those for the currently signed in user.
"""
qs = super(ThisAdmin, self).queryset(request)
if request.user.is_superuser:
return qs
return qs.filter(owner=request.user)
На самом деле это можно сделать и в ветке 1.0.x, но для этого требуется немного больше кода в ModelAdmin.
Преимущество этого подхода заключается в том, что он не загромождает ваши красивые милые админские URL-адреса (и, следовательно, делает для ваших пользователей совершенно очевидным, как просматривать объекты других людей).