Я пытаюсь встроить контроллер в шаблон, но он не работает.
Так вот мой код:
/** PostBundle this is the main action call by the user */
public function statisticAction(Request $request)
{
return $this->render('@Post/statistic/statistic.html.twig');
}
/** The template Post/statistic/statistic.html.twig */
{% block body %}
<div id="wrapper">
<div id="container">
<h1>Statistics</h1>
<div>
{{render_esi(controller('DoctrineBehaviorsBundle:Comment:statistic',
{'filter': {'year': 'desc'}})) }}</div>
</div>
</div>
{% endblock %}
/** DoctrineBehaviorsBundle:Comment:statistic*/
public function statisticAction($filter = [])
{
list($func, $stats) = $this->getDoctrine()->getRepository(CommentRecord::class)->fetchStatistics($filter);
/** @var Response $response */
$response = $this->render('@DoctrineBehaviors/comment/statistic.html.twig', [
'func' => $func,
'stats' => $stats,
]);
$response->setSharedMaxAge(600);
return $response;
}
/** And the template DoctrineBehaviors/comment/statistic.html.twig */
<table class="sto_doctrine_behaviors__table sto_doctrine_behaviors__table__statistics">
<caption class="sto_doctrine_behaviors__table__caption">Statistics for comment record</caption>
<thead class="sto_doctrine_behaviors__table__head">
<tr>
<th>{{ func|upper }}</th>
<th>Class name</th>
<th>Total</th>
</tr>
</thead>
<tbody class="sto_doctrine_behaviors__table__body">
{% for key, value in stats %}
{% for s in value %}
<tr>
<td>{{ key }}</td>
<td>{{ s['class_name'] }}</td>
<td>{{ s['class_total'] }}</td>
</tr>
{% endfor %}
{% endfor %}
</tbody>
В моем проекте яесть другой контроллер рендеринга, и все работает нормально.Разница в том, что я передал объект первого контроллера контроллеру рендеринга в arg.
Так в чем же разница с Symfony doc ?
Спасибо, спасибо заваша помощь.