Archivos de Tags: extends @es

Solucionar ‘A template that extends another one cannot have a body in …’ en Twig con Symfony2

Este es un error que puede resultar confuso al principio pero en realidad se explica por sí mismo. No se puede tener nada de contenido HTML en una plantilla Twig que extiende de otra, ni siquiera comentarios.

Twig_Error_Syntax

Así que por ejemplo esto provocaría el error:

<!-- src/Acme/DemoBundle/Resources/views/Default/index.html.twig -->
{% extends 'AcmeDemoBundle::layout.html.twig' %}

{% block stylesheets %}
  {{ parent() }}
  <link rel="stylesheet" href="{{ asset('bundles/demo/css/base.css') }}" type="text/css" media="all" />
{% endblock %}

La solución: eliminar el comentario HTML de la primera línea o usar comentarios de Twig:

{# src/Acme/DemoBundle/Resources/views/Default/index.html.twig #}
{% extends 'AcmeDemoBundle::layout.html.twig' %}

{% block stylesheets %}
  {{ parent() }}
  <link rel="stylesheet" href="{{ asset('bundles/demo/css/base.css') }}" type="text/css" media="all" />
{% endblock %}