Просмотр исходного кода

Tweak ObjectChangeLogView to work with both restricted and unrestricted querysets

Jeremy Stretch 5 лет назад
Родитель
Сommit
6f8f3f98b4
1 измененных файлов с 5 добавлено и 3 удалено
  1. 5 3
      netbox/extras/views.py

+ 5 - 3
netbox/extras/views.py

@@ -261,9 +261,11 @@ class ObjectChangeLogView(View):
 
     def get(self, request, model, **kwargs):
 
-        # Get object my model and kwargs (e.g. slug='foo')
-        queryset = model.objects.restrict(request.user, 'view')
-        obj = get_object_or_404(queryset, **kwargs)
+        # Handle QuerySet restriction of parent object if needed
+        if hasattr(model.objects, 'restrict'):
+            obj = get_object_or_404(model.objects.restrict(request.user, 'view'), **kwargs)
+        else:
+            obj = get_object_or_404(model, **kwargs)
 
         # Gather all changes for this object (and its related objects)
         content_type = ContentType.objects.get_for_model(model)