Add note in 'Introspecting ViewSet actions' docs section (#9633)

* Fix `Introspecting ViewSet actions` docs section

* Update docs/api-guide/viewsets.md

---------

Co-authored-by: Bruno Alla <browniebroke@users.noreply.github.com>
This commit is contained in:
exg1o 2025-01-29 07:51:38 +02:00 committed by GitHub
parent e1c070aacc
commit f8dbea1a45
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -128,6 +128,8 @@ You may inspect these attributes to adjust behavior based on the current action.
permission_classes = [IsAdminUser]
return [permission() for permission in permission_classes]
**Note**: the `action` attribute is not available in the `get_parsers`, `get_authenticators` and `get_content_negotiator` methods, as it is set _after_ they are called in the framework lifecycle. If you override one of these methods and try to access the `action` attribute in them, you will get an `AttributeError` error.
## Marking extra actions for routing
If you have ad-hoc methods that should be routable, you can mark them as such with the `@action` decorator. Like regular actions, extra actions may be intended for either a single object, or an entire collection. To indicate this, set the `detail` argument to `True` or `False`. The router will configure its URL patterns accordingly. e.g., the `DefaultRouter` will configure detail actions to contain `pk` in their URL patterns.