Не наследуется шаблон twig

161
24 января 2020, 08:00

symfony 4, twig 4.2

Имеется базовый шаблон base.html.twig:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width">
        <title>{% block title %}{% endblock %}</title>
    </head>
    <body>
        <div id="sidebar">
            {% block sidebar %}
            <ul>
                <li><a href="/">Заявки</a></li>
                <li><a href="/D#">Достопримечательности</a></li>
                <li><a href="/D#">Маршруты</a></li>
                <li><a href="/D#">Контакты</a></li>
            </ul>
            {% endblock %}
        </div>
        <div id="content">
            {% block content %}
            {% endblock %}
        </div>
    </body>
</html>

Имеется дочерний шаблон request.html.twig:

{% extends "base.html.twig" %}
{% block title %} Заявки {% endblock %}
{% block sidebar %}
    {{ parent() }}
{% endblock %}
{% block content %}
    {{ parent() }}
{% endblock %}

Вызываю php-скрипт:

<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class AdminController extends Controller
{
    /**
     * @Route("/admin")
     */
    public function admin()
    {
        return $this->render('admin/request.html.twig');
    }
}

Из блоков меняется только title.

Если возвращаю return $this->render('admin/base.html.twig'); - то все выводится.

P.s. Дело точно не в зависимостях.

Заранее извиняюсь если такой вопрос уже задавали - не нашел.

Answer 1

проблема заключалась в том что в extends было написано "base.html.twig". Данный шаблон был написано мною и находился в папке admin/, где и находится request.html.twig. Шаблон с точно таким же названием находился директорией выше, и extends, написанный в request.html.twig наследовал шаблон не в текущей директории (admin/), а директорией выше.

P.s. при переходе (go to declaration) из {% extends "admin/base.html.twig"} phpstorm перенаправлял на нужный файл.

READ ALSO
Как запарсить массив для формирования pach

Как запарсить массив для формирования pach

Не могу разобраться нужно получить массив который бы парсил pach категорий под категорий и тог далее

131
htaccess rewrite rule

htaccess rewrite rule

Не получается сделать ЧПУСуть: Можно ли заменить такой УРЛ:

147
DropzoneJS, PHP, Ошибка 500 (Internal Server Error), при загрузке файлов

DropzoneJS, PHP, Ошибка 500 (Internal Server Error), при загрузке файлов

В консоли браузера выводиться ошибка 500 после загрузке файла:

172