Возможно ли создать новые блоки, которые не определены в базовом шаблоне в рамках Symfony. Я попытался это сделать, но при запуске он не включает эти вновь определенные блоки в базовый шаблон. Я должен включить этот код в отдельный блок в дочернем шаблоне, потому что он дает эту ошибку иначе. Спасибо.создать новые блоки в шаблоне для детей, которые не определены в базовом шаблоне в рамках Symfony
шаблон, который простирается другой не может иметь тело в applicationStudentBundle: По умолчанию: StudentRequest.html.twig в строке 95.
addstudent.html.twig
{% extends 'applicationMainBundle:Default:maintemplate.html.twig' %}
{% block midPanel %}
//block defined in base template
{% endblock %}
{% block stylePanel %}
//block which is not defined in base template
{% endblock %}
maintemplate .html.twig //here mainPanel block is defined but stylePanel block is not defined
<html>
<head>
<!-- Material Design Lite -->
<script type="text/javascript" src="{{ asset('bundles/applicationmain/js/material.js') }}"></script>
<link rel="stylesheet" href="{{ asset('bundles/applicationmain/css/material.css') }}">
<link rel="stylesheet" href="{{ asset('bundles/applicationmain/css/formStyle.css') }}">
<!-- Material Design icon font -->
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<!-- Material Design Lite -->
<script src="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.min.js"></script>
<link rel="stylesheet" href="https://storage.googleapis.com/code.getmdl.io/1.0.6/material.indigo-pink.min.css">
<!-- Material Design icon font -->
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<style>
.demo-layout-transparent {
background: url('http://www.getmdl.io/assets/demos/transparent.jpg') center/cover;
}
.demo-layout-transparent .mdl-layout__header,
.demo-layout-transparent .mdl-layout__drawer-button {
/* This background is dark, so we set text to white. Use 87% black instead if
your background is light. */
color: white;
}
</style>
</head>
<body>
<!-- Uses a transparent header that draws on top of the layout's background -->
<div class="demo-layout-transparent mdl-layout mdl-js-layout">
<div class="mdl-layout__drawer">
<span class="mdl-layout-title">Title</span>
<nav class="mdl-navigation">
<a class="mdl-navigation__link" href="">Link</a>
<a class="mdl-navigation__link" href="">Link</a>
<a class="mdl-navigation__link" href="">Link</a>
<a class="mdl-navigation__link" href="">Link</a>
</nav>
</div>
<main class="mdl-layout__content">
{% block midPanel %}
My cool posts
{% endblock %}
</main>
</div>
</body>
</html>
Пожалуйста, выкладываю первые строки applicationStudentBundle: По умолчанию: StudentRequest.html.twig шаблон и тот, который вы продлить там. –
Расширение шаблона работает нормально. Но проблема в том, что я хочу объявить новый блок, который не определен в базовом шаблоне, потому что, если я не создал блок в дочернем шаблоне, он дает вышеприведенную ошибку. Поэтому мне просто нужно знать способ создания нового блока в дочернем шаблоне. Вот почему я не опубликовал код. Но при необходимости я могу также отправить код. – Heshan
Это ваша проблема http://stackoverflow.com/questions/11739463/getting-error-that-a-template-that-extends-can-not-have -body? –