1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Introduce ObjectView to enforce object-level permissions for individual object views

This commit is contained in:
Jeremy Stretch
2020-05-21 15:39:07 -04:00
parent 8fd860a413
commit e61fc1f709
9 changed files with 118 additions and 106 deletions

View File

@@ -9,7 +9,8 @@ from django.urls import reverse
from django.views.generic import View
from utilities.views import (
BulkDeleteView, BulkEditView, BulkImportView, GetReturnURLMixin, ObjectDeleteView, ObjectEditView, ObjectListView,
BulkDeleteView, BulkEditView, BulkImportView, GetReturnURLMixin, ObjectView, ObjectDeleteView, ObjectEditView,
ObjectListView,
)
from . import filters, forms, tables
from .decorators import userkey_required
@@ -66,12 +67,12 @@ class SecretListView(ObjectListView):
action_buttons = ('import', 'export')
class SecretView(PermissionRequiredMixin, View):
permission_required = 'secrets.view_secret'
class SecretView(ObjectView):
queryset = Secret.objects.all()
def get(self, request, pk):
secret = get_object_or_404(Secret, pk=pk)
secret = get_object_or_404(self.queryset, pk=pk)
return render(request, 'secrets/secret.html', {
'secret': secret,