Skip to content

utils

main.views.utils

View utilities.

Functions

handle_errors(view_func)

Decorator to handle errors.

Parameters:

Name Type Description Default
view_func ViewType

The view function to be wrapped.

required

Returns:

Type Description
ViewType

The wrapped view function.

Source code in main/views/utils.py
def handle_errors(view_func: ViewType) -> ViewType:
    """Decorator to handle errors.

    Args:
        view_func: The view function to be wrapped.

    Returns:
        The wrapped view function.
    """
    logger = logging.getLogger("django")

    def wrapped_view(request, *args, **kwargs) -> HttpResponse:  # type: ignore
        try:
            return view_func(request, *args, **kwargs)
        except Exception as e:
            logger.exception(e)
            return render(request, "main/error_message.html")

    return wrapped_view