diff --git a/netbox/users/urls.py b/netbox/users/urls.py index 62b17a663..ed1c21c02 100644 --- a/netbox/users/urls.py +++ b/netbox/users/urls.py @@ -1,16 +1,19 @@ -from django.urls import path +from django.urls import include, path +from utilities.urls import get_model_urls from . import views app_name = 'users' urlpatterns = [ + # User path('profile/', views.ProfileView.as_view(), name='profile'), path('preferences/', views.UserConfigView.as_view(), name='preferences'), path('password/', views.ChangePasswordView.as_view(), name='change_password'), + + # API tokens path('api-tokens/', views.TokenListView.as_view(), name='token_list'), path('api-tokens/add/', views.TokenEditView.as_view(), name='token_add'), - path('api-tokens//edit/', views.TokenEditView.as_view(), name='token_edit'), - path('api-tokens//delete/', views.TokenDeleteView.as_view(), name='token_delete'), + path('api-tokens//', include(get_model_urls('users', 'token'))), ] diff --git a/netbox/users/views.py b/netbox/users/views.py index fe1181fc1..1ceeb8211 100644 --- a/netbox/users/views.py +++ b/netbox/users/views.py @@ -20,6 +20,7 @@ from extras.tables import ObjectChangeTable from netbox.authentication import get_auth_backend_display, get_saml_idps from netbox.config import get_config from utilities.forms import ConfirmationForm +from utilities.views import register_model_view from .forms import LoginForm, PasswordChangeForm, TokenForm, UserConfigForm from .models import Token, UserConfig from .tables import TokenTable @@ -246,6 +247,7 @@ class TokenListView(LoginRequiredMixin, View): }) +@register_model_view(Token, 'edit') class TokenEditView(LoginRequiredMixin, View): def get(self, request, pk=None): @@ -300,6 +302,7 @@ class TokenEditView(LoginRequiredMixin, View): }) +@register_model_view(Token, 'delete') class TokenDeleteView(LoginRequiredMixin, View): def get(self, request, pk):