      def detail_action(self, request, *args, **kwargs):
          raise NotImplementedError
  
  
  router = SimpleRouter()
  router.register(r'resources', ResourceViewSet)
  urlpatterns = [
 
</s> remove         for name in ['mapping', 'detail', 'name', 'url_path', 'url_name', 'kwargs']:
 </s> add         for name in ['mapping', 'detail', 'url_path', 'url_name', 'kwargs']: </s> remove def action(methods=None, detail=None, name=None, url_path=None, url_name=None, **kwargs):
 </s> add def action(methods=None, detail=None, url_path=None, url_name=None, **kwargs):
    @action(detail=True, name='Custom Name')
    def named_action(self, request, *args, **kwargs):
        raise NotImplementedError

    @action(detail=True, suffix='Custom Suffix')
    def suffixed_action(self, request, *args, **kwargs):
        raise NotImplementedError

      def detail_action(self, request, *args, **kwargs):
          raise NotImplementedError
  
    @action(detail=True, name='Custom Name')
    def named_action(self, request, *args, **kwargs):
        raise NotImplementedError

    @action(detail=True, suffix='Custom Suffix')
    def suffixed_action(self, request, *args, **kwargs):
        raise NotImplementedError

  
  router = SimpleRouter()
  router.register(r'resources', ResourceViewSet)
  urlpatterns = [
keep keep add keep keep keep keep
 Fix action support for ViewSet suffixes (#6081)

* Add suffix support for actions

Removes the newly introduced `action.name` in favor of leveraging the
View's `.get_view_name()` method, which supports both name and suffix.

* Fix view description func docstrings

* Test action decorator name & suffix kwargs

* Adjust 'extra action' docs 
tests/test_utils.py