encode / django-rest-framework

Web APIs for Django. 🎸
https://www.django-rest-framework.org
Other
28.5k stars 6.85k forks source link

Feature(docs): Add inventory file for intersphinx support. #9587

Open onegreyonewhite opened 2 weeks ago

onegreyonewhite commented 2 weeks ago

Description

This pull request enhances the Django REST Framework documentation by configuring it to generate an objects.inv file through mkdocstrings-python. This file allows for integration with intersphinx, enabling references to DRF documentation from other Sphinx-based documentation projects, which supports better cross-referencing and linking across Python documentation.

This change addresses feedback from the community discussion here, where users expressed the need for smoother integration with other projects' documentation. By generating objects.inv, we can facilitate seamless linking and improve the usability of DRF documentation in broader documentation ecosystems.

No open issues directly reference this feature, but this enhancement aligns with ongoing efforts to improve DRF's documentation flexibility and integration capabilities.

pawamoy commented 2 weeks ago

This change enables mkdocstrings, but does not actually use it to render API docs. So nothing will be added to the objects.inv file, unfortunately. In short, this change is not enough to achieve what you want.

onegreyonewhite commented 2 weeks ago

@pawamoy yep, you're right. I added links to actual documentation. It's better then nothing but I think whole documentation should be rewrited. But it just a first step.

Currently covered links ```bash $ sphobjinv convert plain site/objects.inv - # Sphinx inventory version 2 # Project: Django REST framework # Version: 0.0.0 # The remainder of this file is compressed using zlib. rest_framework.authentication.BasicAuthentication py:class 1 api-guide/authentication/#$ - rest_framework.authentication.RemoteUserAuthentication py:class 1 api-guide/authentication/#$ - rest_framework.authentication.SessionAuthentication py:class 1 api-guide/authentication/#$ - rest_framework.authentication.TokenAuthentication py:class 1 api-guide/authentication/#$ - rest_framework.decorators.action py:function 1 api-guide/viewsets/#$ - rest_framework.decorators.api_view py:function 1 api-guide/views/#$ - rest_framework.decorators.schema py:function 1 api-guide/views/#$ - rest_framework.exceptions.APIException py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.AuthenticationFailed py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.MethodNotAllowed py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.NotAcceptable py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.NotAuthenticated py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.NotFound py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.ParseError py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.PermissionDenied py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.Throttled py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.UnsupportedMediaType py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.ValidationError py:class 1 api-guide/exceptions/#$ - rest_framework.exceptions.bad_request py:function 1 api-guide/exceptions/#$ - rest_framework.exceptions.server_error py:function 1 api-guide/exceptions/#$ - rest_framework.fields.BooleanField py:class 1 api-guide/fields/#$ - rest_framework.fields.CharField py:class 1 api-guide/fields/#$ - rest_framework.fields.ChoiceField py:class 1 api-guide/fields/#$ - rest_framework.fields.CreateOnlyDefault py:class 1 api-guide/validators/#$ - rest_framework.fields.CurrentUserDefault py:class 1 api-guide/validators/#$ - rest_framework.fields.DateField py:class 1 api-guide/fields/#$ - rest_framework.fields.DateTimeField py:class 1 api-guide/fields/#$ - rest_framework.fields.DecimalField py:class 1 api-guide/fields/#$ - rest_framework.fields.DictField py:class 1 api-guide/fields/#$ - rest_framework.fields.DurationField py:class 1 api-guide/fields/#$ - rest_framework.fields.EmailField py:class 1 api-guide/fields/#$ - rest_framework.fields.FileField py:class 1 api-guide/fields/#$ - rest_framework.fields.FilePathField py:class 1 api-guide/fields/#$ - rest_framework.fields.FloatField py:class 1 api-guide/fields/#$ - rest_framework.fields.HStoreField py:class 1 api-guide/fields/#$ - rest_framework.fields.HiddenField py:class 1 api-guide/fields/#$ - rest_framework.fields.IPAddressField py:class 1 api-guide/fields/#$ - rest_framework.fields.ImageField py:class 1 api-guide/fields/#$ - rest_framework.fields.IntegerField py:class 1 api-guide/fields/#$ - rest_framework.fields.JSONField py:class 1 api-guide/fields/#$ - rest_framework.fields.ListField py:class 1 api-guide/fields/#$ - rest_framework.fields.ModelField py:class 1 api-guide/fields/#$ - rest_framework.fields.MultipleChoiceField py:class 1 api-guide/fields/#$ - rest_framework.fields.ReadOnlyField py:class 1 api-guide/fields/#$ - rest_framework.fields.RegexField py:class 1 api-guide/fields/#$ - rest_framework.fields.SerializerMethodField py:class 1 api-guide/fields/#$ - rest_framework.fields.SlugField py:class 1 api-guide/fields/#$ - rest_framework.fields.TimeField py:class 1 api-guide/fields/#$ - rest_framework.fields.URLField py:class 1 api-guide/fields/#$ - rest_framework.fields.UUIDField py:class 1 api-guide/fields/#$ - rest_framework.filters.BaseFilterBackend py:class 1 api-guide/filtering/#$ - rest_framework.filters.OrderingFilter py:class 1 api-guide/filtering/#$ - rest_framework.filters.SearchFilter py:class 1 api-guide/filtering/#$ - rest_framework.generics.CreateAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.CreateAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.CreateAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.CreateAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.CreateAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.CreateAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.CreateAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.CreateAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.CreateAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.CreateAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.CreateAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.CreateAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.CreateAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.CreateAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.CreateAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.CreateAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.CreateAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.CreateAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.CreateAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.CreateAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.CreateAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.CreateAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.DestroyAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.DestroyAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.DestroyAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.DestroyAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.DestroyAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.DestroyAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.DestroyAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.DestroyAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.DestroyAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.DestroyAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.DestroyAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.DestroyAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.DestroyAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.DestroyAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.DestroyAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.DestroyAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.DestroyAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.DestroyAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.DestroyAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.DestroyAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.DestroyAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.DestroyAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.GenericAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.GenericAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.GenericAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.GenericAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.GenericAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.GenericAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.GenericAPIView.filter_queryset py:function 1 api-guide/generic-views/#$ - rest_framework.generics.GenericAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.GenericAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.GenericAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.GenericAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.GenericAPIView.get_object py:function 1 api-guide/generic-views/#$ - rest_framework.generics.GenericAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.GenericAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.GenericAPIView.get_queryset py:function 1 api-guide/generic-views/#$ - rest_framework.generics.GenericAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.GenericAPIView.get_serializer_class py:function 1 api-guide/generic-views/#$ - rest_framework.generics.GenericAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.GenericAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.GenericAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.GenericAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.GenericAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.GenericAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.GenericAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.GenericAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.GenericAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.ListAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.ListAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.ListAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.ListAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.ListAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.ListAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.ListAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.ListAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.ListAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.ListAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.ListAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.ListAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.ListAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.ListAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.ListAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.ListAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.ListAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.ListAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.ListAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.ListAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.ListAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.ListAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.ListCreateAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.ListCreateAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.ListCreateAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.ListCreateAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.ListCreateAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.ListCreateAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.ListCreateAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.ListCreateAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.ListCreateAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.ListCreateAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.ListCreateAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.ListCreateAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.ListCreateAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.ListCreateAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.ListCreateAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.ListCreateAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.ListCreateAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.ListCreateAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.ListCreateAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.ListCreateAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.ListCreateAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.ListCreateAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.RetrieveAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.RetrieveAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.RetrieveAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.RetrieveAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.RetrieveAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.RetrieveAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.RetrieveAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.RetrieveAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.RetrieveAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.RetrieveAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.RetrieveAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.RetrieveAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.RetrieveAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.RetrieveAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.RetrieveAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.RetrieveAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.RetrieveAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.RetrieveAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.RetrieveAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.RetrieveAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.RetrieveAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.RetrieveAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.RetrieveDestroyAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.RetrieveDestroyAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.RetrieveDestroyAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.RetrieveDestroyAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.RetrieveDestroyAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.RetrieveDestroyAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.RetrieveDestroyAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.RetrieveDestroyAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.RetrieveDestroyAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.RetrieveDestroyAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.RetrieveDestroyAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.RetrieveDestroyAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.RetrieveDestroyAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.RetrieveDestroyAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.RetrieveDestroyAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.RetrieveDestroyAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.RetrieveDestroyAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.RetrieveDestroyAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.RetrieveDestroyAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.RetrieveDestroyAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.RetrieveDestroyAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.RetrieveDestroyAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.RetrieveUpdateAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.RetrieveUpdateAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.RetrieveUpdateAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.RetrieveUpdateAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.RetrieveUpdateAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.RetrieveUpdateAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.RetrieveUpdateAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.RetrieveUpdateAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.RetrieveUpdateAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.RetrieveUpdateAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.RetrieveUpdateAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.RetrieveUpdateAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.RetrieveUpdateAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.RetrieveUpdateAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.RetrieveUpdateAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.RetrieveUpdateAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.RetrieveUpdateAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.RetrieveUpdateAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.RetrieveUpdateAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.RetrieveUpdateAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.RetrieveUpdateAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.RetrieveUpdateAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.RetrieveUpdateDestroyAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.RetrieveUpdateDestroyAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.RetrieveUpdateDestroyAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.RetrieveUpdateDestroyAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.RetrieveUpdateDestroyAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.RetrieveUpdateDestroyAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.RetrieveUpdateDestroyAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.RetrieveUpdateDestroyAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.RetrieveUpdateDestroyAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.RetrieveUpdateDestroyAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.RetrieveUpdateDestroyAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.RetrieveUpdateDestroyAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.RetrieveUpdateDestroyAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.RetrieveUpdateDestroyAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.RetrieveUpdateDestroyAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.RetrieveUpdateDestroyAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.RetrieveUpdateDestroyAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.RetrieveUpdateDestroyAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.RetrieveUpdateDestroyAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.RetrieveUpdateDestroyAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.RetrieveUpdateDestroyAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.RetrieveUpdateDestroyAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.generics.UpdateAPIView py:class 1 api-guide/generic-views/#$ - rest_framework.generics.UpdateAPIView.authentication_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.authentication_classes - rest_framework.generics.UpdateAPIView.check_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.check_permissions - rest_framework.generics.UpdateAPIView.check_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.check_throttles - rest_framework.generics.UpdateAPIView.content_negotiation_class py:attr 2 api-guide/views/#rest_framework.views.APIView.content_negotiation_class - rest_framework.generics.UpdateAPIView.dispatch py:function 2 api-guide/views/#rest_framework.views.APIView.dispatch - rest_framework.generics.UpdateAPIView.finalize_response py:function 2 api-guide/views/#rest_framework.views.APIView.finalize_response - rest_framework.generics.UpdateAPIView.get_authenticators py:function 2 api-guide/views/#rest_framework.views.APIView.get_authenticators - rest_framework.generics.UpdateAPIView.get_content_negotiator py:function 2 api-guide/views/#rest_framework.views.APIView.get_content_negotiator - rest_framework.generics.UpdateAPIView.get_exception_handler py:function 2 api-guide/views/#rest_framework.views.APIView.get_exception_handler - rest_framework.generics.UpdateAPIView.get_parsers py:function 2 api-guide/views/#rest_framework.views.APIView.get_parsers - rest_framework.generics.UpdateAPIView.get_permissions py:function 2 api-guide/views/#rest_framework.views.APIView.get_permissions - rest_framework.generics.UpdateAPIView.get_renderers py:function 2 api-guide/views/#rest_framework.views.APIView.get_renderers - rest_framework.generics.UpdateAPIView.get_throttles py:function 2 api-guide/views/#rest_framework.views.APIView.get_throttles - rest_framework.generics.UpdateAPIView.handle_exception py:function 2 api-guide/views/#rest_framework.views.APIView.handle_exception - rest_framework.generics.UpdateAPIView.initial py:function 2 api-guide/views/#rest_framework.views.APIView.initial - rest_framework.generics.UpdateAPIView.initialize_request py:function 2 api-guide/views/#rest_framework.views.APIView.initialize_request - rest_framework.generics.UpdateAPIView.parser_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.parser_classes - rest_framework.generics.UpdateAPIView.perform_content_negotiation py:function 2 api-guide/views/#rest_framework.views.APIView.perform_content_negotiation - rest_framework.generics.UpdateAPIView.permission_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.permission_classes - rest_framework.generics.UpdateAPIView.renderer_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.renderer_classes - rest_framework.generics.UpdateAPIView.throttle_classes py:attr 2 api-guide/views/#rest_framework.views.APIView.throttle_classes - rest_framework.mixins.CreateModelMixin py:class 1 api-guide/generic-views/#$ - rest_framework.mixins.DestroyModelMixin py:class 1 api-guide/generic-views/#$ - rest_framework.mixins.ListModelMixin py:class 1 api-guide/generic-views/#$ - rest_framework.mixins.RetrieveModelMixin py:class 1 api-guide/generic-views/#$ - rest_framework.mixins.UpdateModelMixin py:class 1 api-guide/generic-views/#$ - rest_framework.pagination.BasePagination py:class 1 api-guide/pagination/#$ - rest_framework.pagination.CursorPagination py:class 1 api-guide/pagination/#$ - rest_framework.pagination.LimitOffsetPagination py:class 1 api-guide/pagination/#$ - rest_framework.pagination.PageNumberPagination py:class 1 api-guide/pagination/#$ - rest_framework.parsers.BaseParser py:class 1 api-guide/parsers/#$ - rest_framework.parsers.FileUploadParser py:class 1 api-guide/parsers/#$ - rest_framework.parsers.FormParser py:class 1 api-guide/parsers/#$ - rest_framework.parsers.JSONParser py:class 1 api-guide/parsers/#$ - rest_framework.parsers.MultiPartParser py:class 1 api-guide/parsers/#$ - rest_framework.permissions.AllowAny py:class 1 api-guide/permissions/#$ - rest_framework.permissions.BasePermission py:class 1 api-guide/permissions/#$ - rest_framework.permissions.DjangoModelPermissions py:class 1 api-guide/permissions/#$ - rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly py:class 1 api-guide/permissions/#$ - rest_framework.permissions.IsAdminUser py:class 1 api-guide/permissions/#$ - rest_framework.permissions.IsAuthenticated py:class 1 api-guide/permissions/#$ - rest_framework.permissions.IsAuthenticatedOrReadOnly py:class 1 api-guide/permissions/#$ - rest_framework.relations.HyperlinkedIdentityField py:class 1 api-guide/relations/#$ - rest_framework.relations.HyperlinkedRelatedField py:class 1 api-guide/relations/#$ - rest_framework.relations.PrimaryKeyRelatedField py:class 1 api-guide/relations/#$ - rest_framework.relations.RelatedField py:class 1 api-guide/relations/#$ - rest_framework.relations.SlugRelatedField py:class 1 api-guide/relations/#$ - rest_framework.relations.StringRelatedField py:class 1 api-guide/relations/#$ - rest_framework.renderers.AdminRenderer py:class 1 api-guide/renderers/#$ - rest_framework.renderers.BaseRenderer py:class 1 api-guide/renderers/#$ - rest_framework.renderers.BrowsableAPIRenderer py:class 1 api-guide/renderers/#$ - rest_framework.renderers.HTMLFormRenderer py:class 1 api-guide/renderers/#$ - rest_framework.renderers.JSONRenderer py:class 1 api-guide/renderers/#$ - rest_framework.renderers.MultiPartRenderer py:class 1 api-guide/renderers/#$ - rest_framework.renderers.StaticHTMLRenderer py:class 1 api-guide/renderers/#$ - rest_framework.renderers.TemplateHTMLRenderer py:class 1 api-guide/renderers/#$ - rest_framework.request.Request py:class 1 api-guide/requests/#$ - rest_framework.response.Response py:class 1 api-guide/responses/#$ - rest_framework.reverse.reverse py:function 1 api-guide/reverse/#$ - rest_framework.reverse.reverse_lazy py:data 1 api-guide/reverse/#$ - rest_framework.routers.BaseRouter py:class 1 api-guide/routers/#$ - rest_framework.routers.DefaultRouter py:class 1 api-guide/routers/#$ - rest_framework.routers.SimpleRouter py:class 1 api-guide/routers/#$ - rest_framework.serializers.BaseSerializer py:class 1 api-guide/serializers/#$ - rest_framework.serializers.BaseSerializer.is_valid py:function 2 api-guide/serializers/#rest_framework.serializers.Serializer.is_valid - rest_framework.serializers.CreateOnlyDefault py:class 1 api-guide/validators/#$ - rest_framework.serializers.CurrentUserDefault py:class 1 api-guide/validators/#$ - rest_framework.serializers.HyperlinkedModelSerializer py:class 1 api-guide/serializers/#$ - rest_framework.serializers.ListSerializer py:class 1 api-guide/serializers/#$ - rest_framework.serializers.ModelSerializer py:class 1 api-guide/serializers/#$ - rest_framework.serializers.Serializer py:class 1 api-guide/serializers/#$ - rest_framework.serializers.Serializer.is_valid py:function 1 api-guide/serializers/#$ - rest_framework.throttling.AnonRateThrottle py:class 1 api-guide/throttling/#$ - rest_framework.throttling.BaseThrottle py:class 1 api-guide/throttling/#$ - rest_framework.throttling.ScopedRateThrottle py:class 1 api-guide/throttling/#$ - rest_framework.throttling.UserRateThrottle py:class 1 api-guide/throttling/#$ - rest_framework.validators.UniqueForDateValidator py:class 1 api-guide/validators/#$ - rest_framework.validators.UniqueForMonthValidator py:class 1 api-guide/validators/#$ - rest_framework.validators.UniqueForYearValidator py:class 1 api-guide/validators/#$ - rest_framework.validators.UniqueTogetherValidator py:class 1 api-guide/validators/#$ - rest_framework.validators.UniqueValidator py:class 1 api-guide/validators/#$ - rest_framework.versioning.AcceptHeaderVersioning py:class 1 api-guide/versioning/#$ - rest_framework.versioning.BaseVersioning py:class 1 api-guide/versioning/#$ - rest_framework.versioning.HostNameVersioning py:class 1 api-guide/versioning/#$ - rest_framework.versioning.NamespaceVersioning py:class 1 api-guide/versioning/#$ - rest_framework.versioning.QueryParameterVersioning py:class 1 api-guide/versioning/#$ - rest_framework.versioning.URLPathVersioning py:class 1 api-guide/versioning/#$ - rest_framework.views.APIView py:class 1 api-guide/views/#$ - rest_framework.views.APIView.authentication_classes py:attr 1 api-guide/views/#$ - rest_framework.views.APIView.check_permissions py:function 1 api-guide/views/#$ - rest_framework.views.APIView.check_throttles py:function 1 api-guide/views/#$ - rest_framework.views.APIView.content_negotiation_class py:attr 1 api-guide/views/#$ - rest_framework.views.APIView.dispatch py:function 1 api-guide/views/#$ - rest_framework.views.APIView.finalize_response py:function 1 api-guide/views/#$ - rest_framework.views.APIView.get_authenticators py:function 1 api-guide/views/#$ - rest_framework.views.APIView.get_content_negotiator py:function 1 api-guide/views/#$ - rest_framework.views.APIView.get_exception_handler py:function 1 api-guide/views/#$ - rest_framework.views.APIView.get_parsers py:function 1 api-guide/views/#$ - rest_framework.views.APIView.get_permissions py:function 1 api-guide/views/#$ - rest_framework.views.APIView.get_renderers py:function 1 api-guide/views/#$ - rest_framework.views.APIView.get_throttles py:function 1 api-guide/views/#$ - rest_framework.views.APIView.handle_exception py:function 1 api-guide/views/#$ - rest_framework.views.APIView.initial py:function 1 api-guide/views/#$ - rest_framework.views.APIView.initialize_request py:function 1 api-guide/views/#$ - rest_framework.views.APIView.parser_classes py:attr 1 api-guide/views/#$ - rest_framework.views.APIView.perform_content_negotiation py:function 1 api-guide/views/#$ - rest_framework.views.APIView.permission_classes py:attr 1 api-guide/views/#$ - rest_framework.views.APIView.renderer_classes py:attr 1 api-guide/views/#$ - rest_framework.views.APIView.throttle_classes py:attr 1 api-guide/views/#$ - rest_framework.viewsets.GenericViewSet py:class 1 api-guide/viewsets/#$ - rest_framework.viewsets.ModelViewSet py:class 1 api-guide/viewsets/#$ - rest_framework.viewsets.ReadOnlyModelViewSet py:class 1 api-guide/viewsets/#$ - rest_framework.viewsets.ViewSet py:class 1 api-guide/viewsets/#$ - ```
tomchristie commented 2 weeks ago

The light touch approach to this would be to add an objects.inv directly. No tooling changes.

onegreyonewhite commented 2 weeks ago

The light touch approach to this would be to add an objects.inv directly. No tooling changes.

@tomchristie If you have an idea on how to implement this so that it's easy to maintain later, I'm all ears. In this approach, all the manual work comes down to adding links to classes directly in the documentation. This way, there's no need to worry about changing header names—the link will point precisely to the section that reflects the description.