|
@@ -4,11 +4,9 @@ from django.conf import settings
|
|
|
from django.contrib.contenttypes.models import ContentType
|
|
from django.contrib.contenttypes.models import ContentType
|
|
|
from django.db.models import Count, F
|
|
from django.db.models import Count, F
|
|
|
from django.shortcuts import render
|
|
from django.shortcuts import render
|
|
|
|
|
+from django.urls import reverse
|
|
|
from django.views.generic import View
|
|
from django.views.generic import View
|
|
|
from packaging import version
|
|
from packaging import version
|
|
|
-from rest_framework.response import Response
|
|
|
|
|
-from rest_framework.reverse import reverse
|
|
|
|
|
-from rest_framework.views import APIView
|
|
|
|
|
|
|
|
|
|
from circuits.filters import CircuitFilterSet, ProviderFilterSet
|
|
from circuits.filters import CircuitFilterSet, ProviderFilterSet
|
|
|
from circuits.models import Circuit, Provider
|
|
from circuits.models import Circuit, Provider
|
|
@@ -306,7 +304,7 @@ class SearchView(View):
|
|
|
results.append({
|
|
results.append({
|
|
|
'name': queryset.model._meta.verbose_name_plural,
|
|
'name': queryset.model._meta.verbose_name_plural,
|
|
|
'table': table,
|
|
'table': table,
|
|
|
- 'url': '{}?q={}'.format(reverse(url), form.cleaned_data['q'])
|
|
|
|
|
|
|
+ 'url': f"{reverse(url)}?q={form.cleaned_data.get('q')}"
|
|
|
})
|
|
})
|
|
|
|
|
|
|
|
return render(request, 'search.html', {
|
|
return render(request, 'search.html', {
|
|
@@ -323,27 +321,3 @@ class StaticMediaFailureView(View):
|
|
|
return render(request, 'media_failure.html', {
|
|
return render(request, 'media_failure.html', {
|
|
|
'filename': request.GET.get('filename')
|
|
'filename': request.GET.get('filename')
|
|
|
})
|
|
})
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-class APIRootView(APIView):
|
|
|
|
|
- _ignore_model_permissions = True
|
|
|
|
|
- exclude_from_schema = True
|
|
|
|
|
- swagger_schema = None
|
|
|
|
|
-
|
|
|
|
|
- def get_view_name(self):
|
|
|
|
|
- return "API Root"
|
|
|
|
|
-
|
|
|
|
|
- def get(self, request, format=None):
|
|
|
|
|
-
|
|
|
|
|
- return Response(OrderedDict((
|
|
|
|
|
- ('circuits', reverse('circuits-api:api-root', request=request, format=format)),
|
|
|
|
|
- ('dcim', reverse('dcim-api:api-root', request=request, format=format)),
|
|
|
|
|
- ('extras', reverse('extras-api:api-root', request=request, format=format)),
|
|
|
|
|
- ('ipam', reverse('ipam-api:api-root', request=request, format=format)),
|
|
|
|
|
- ('plugins', reverse('plugins-api:api-root', request=request, format=format)),
|
|
|
|
|
- ('secrets', reverse('secrets-api:api-root', request=request, format=format)),
|
|
|
|
|
- ('status', reverse('api-status', request=request, format=format)),
|
|
|
|
|
- ('tenancy', reverse('tenancy-api:api-root', request=request, format=format)),
|
|
|
|
|
- ('users', reverse('users-api:api-root', request=request, format=format)),
|
|
|
|
|
- ('virtualization', reverse('virtualization-api:api-root', request=request, format=format)),
|
|
|
|
|
- )))
|
|
|