Twig kalıplarının varsayılan lokasyonu app/Resources/views'dir ama bunu klasik olan lokasyon src/AppBundle/Resources/views ile değiştirmek isterseniz, aşağıdaki konfigürasyonu yapmanız gerekir.


# app/config/config.yml

twig:
...
paths: ["%kernel.project_dir%/src/AppBundle/Resources/views"]

Twig kalıplarını @templating servisini controller içine enjekte ederek sunmak isterseniz, aşağıdaki konfigürasyonu yapmanız gerekir.


# app/config/config.yml

framework:
templating:
engines: ['twig']

Yukarıdaki değişikliklerden sonra aşağıdakine benzer bir controller kullanabilirsiniz.


namespace AppBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Templating\EngineInterface;
use Symfony\Component\HttpFoundation\Response;

class DefaultController
{
private $templating;

public function __construct(EngineInterface $templating)
{
$this->templating = $templating;
}

public function indexAction()
{
$template = $this->templating->render('AppBundle:default:index.html.twig', [...]);

return (new Response())->setContent($template);
}
}

# src/AppBundle/Resources/views/default/index.html.twig

{% extends '::base.html.twig' %}

{% block body %}
Default
{% endblock %}