Controllers incorporados en Symfony

Controllers incorporados en Symfony que se encuentran en varios componentes: FrameworkBundle, TwigBundle, WebProfilerBundle y HttpKernel

Contenido modificable

Si ves errores o quieres modificar/añadir contenidos, puedes crear un pull request. Gracias

Según el API de Symfony, existen varios controllers incorporados en el framework:

FrameworkBundle

Controller

Es el controller básico que se suele extender por defecto. Es una clase abstract que implementa ContainerAwareInterface. Proporciona métodos para funcionalidades comunes que se necesitan en controllers.

Controller es el base controller que se ha tratado en una sección anterior, que facilita redirecciones, renderizar templates, acceder a services, etc.

// src/AppBundle/Controller/DefaultController.php
namespace AppBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class DefaultController extends Controller
{
    // ...
}

ControllerNameParser

Convierte un controlador desde la notación corta a:b:c (BlogBundle:Post:index) a una class::method fully-qualified (Bundle\BlogBundle\Controller\PostController::indexAction).

ControllerResolver

Extiende al ControllerResolver del HttpKernel.

RedirectController

RedirectController implementa ContainerAwareInterface, y añade dos métodos: redirectAction y urlRedirectAction.

TemplateController

También implementa a ContainerAwareInterface y añade el método templateAction, que renderiza una template.

TwigBundle

ExceptionController

Es el controlador que renderiza las páginas de error o excepción para una FlattenExtension dada. El método showAction convierte una Exception en una Response.

WebProfilerBundle

ExceptionController

Maneja las excepciones en el Web Profiler.

ProfilerController

Controller principal del Web Profiler.

RouterController

Maneja las routes del Web Profiler.

HttpKernel

ControllerReference

Actúa como un marcador y almacén de datos para un Controller. Algunos métodos en Symfony aceptan una URI (como string) o un controller como argumentos. En este segundo caso, en lugar de pasar un array representando el controller, puedes usar una instancia de esta clase.

ControllerResolver

Esta implementación utiliza el atributo del request '_controller' para determinar el controller a ejecutar y utiliza los atributos del request para determinar los argumentos del método del controller.

TraceableControllerResolver

Incorpora un objeto Stopwatch en su constructor, clase que permite perfilar el código.

ControllerResolverInterface

Una implementación de ControllerResolverInterface permite determinar el controller a ejecutar basándose en un objeto Request.