# Path: core/helpers.py
# def pluralize(name: str) -> str:
#     """
#     Simple and quite stupid helper to pluralize a name
#     """
#     return name + 's'
# 
# def get_model_name(inst) -> str:
#     """
#     Get the lowered model name from an instance or a class
#     """
#     return (inst if isinstance(inst, type) else type(inst)).__name__.lower()


from rest_framework.viewsets import ModelViewSet, ReadOnlyModelViewSet
from typing import Sequence, Dict, Union, Tuple
from core.helpers import pluralize, get_model_name
from django.urls import path
from django.db import models

ModelViewSetType = Union[ModelViewSet, ReadOnlyModelViewSet]
ViewSetList = Union[ModelViewSetType, Sequence[ModelViewSetType]]


VIEWSET_METHODS = {
    'list': {
        'get': 'list',
        'post': 'create',
    },

# Path: core/helpers.py
# def pluralize(name: str) -> str:
#     """
#     Simple and quite stupid helper to pluralize a name
#     """
#     return name + 's'
# 
# def get_model_name(inst) -> str:
#     """
#     Get the lowered model name from an instance or a class
#     """
#     return (inst if isinstance(inst, type) else type(inst)).__name__.lower()


# Path: core/routing.py
from rest_framework.viewsets import ModelViewSet, ReadOnlyModelViewSet
from typing import Sequence, Dict, Union, Tuple
from core.helpers import pluralize, get_model_name
from django.urls import path
from django.db import models


ModelViewSetType = Union[ModelViewSet, ReadOnlyModelViewSet]
ViewSetList = Union[ModelViewSetType, Sequence[ModelViewSetType]]


VIEWSET_METHODS = {
    'list': {
        'get': 'list',
        'post': 'create',
    },

    'detail': {