TwigBundle Configuration Reference

  • YAML
    twig:
        form:
            resources:
    
                # Default:
                - div_layout.html.twig
    
                # Example:
                - MyBundle::form.html.twig
        globals:
    
            # Examples:
            foo:                 "@bar"
            pi:                  3.14
    
            # Prototype
            key:
                id:                   ~
                type:                 ~
                value:                ~
        autoescape:           ~
        base_template_class:  ~ # Example: Twig_Template
        cache:                %kernel.cache_dir%/twig
        charset:              %kernel.charset%
        debug:                %kernel.debug%
        strict_variables:     ~
        auto_reload:          ~
        exception_controller:  Symfony\Bundle\TwigBundle\Controller\ExceptionController::showAction
    
  • XML
    <container xmlns="http://symfony.com/schema/dic/services"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:twig="http://symfony.com/schema/dic/twig"
        xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd
                            http://symfony.com/schema/dic/twig http://symfony.com/schema/dic/doctrine/twig-1.0.xsd">
    
        <twig:config auto-reload="%kernel.debug%" autoescape="true" base-template-class="Twig_Template" cache="%kernel.cache_dir%/twig" charset="%kernel.charset%" debug="%kernel.debug%" strict-variables="false">
            <twig:form>
                <twig:resource>MyBundle::form.html.twig</twig:resource>
            </twig:form>
            <twig:global key="foo" id="bar" type="service" />
            <twig:global key="pi">3.14</twig:global>
        </twig:config>
    </container>
    
  • PHP
    $container->loadFromExtension('twig', array(
        'form' => array(
            'resources' => array(
                'MyBundle::form.html.twig',
            )
         ),
         'globals' => array(
             'foo' => '@bar',
             'pi'  => 3.14,
         ),
         'auto_reload'         => '%kernel.debug%',
         'autoescape'          => true,
         'base_template_class' => 'Twig_Template',
         'cache'               => '%kernel.cache_dir%/twig',
         'charset'             => '%kernel.charset%',
         'debug'               => '%kernel.debug%',
         'strict_variables'    => false,
    ));
    

Configuration

exception_controller

type: string default: Symfony\\Bundle\\TwigBundle\\Controller\\ExceptionController::showAction

This is the controller that is activated after an exception is thrown anywhere in your application. The default controller (Symfony\Bundle\TwigBundle\Controller\ExceptionController) is what’s responsible for rendering specific templates under different error conditions (see How to customize Error Pages). Modifying this option is advanced. If you need to customize an error page you should use the previous link. If you need to perform some behavior on an exception, you should add a listener to the kernel.exception event (see Enabling Custom Listeners).