Я заблокирован по ошибке с Symfony 4.3.
Я установил комплект: CMENGoogleChartsBundle
Установка в порядке, ошибок нет.
Итак, я хотел попробуйте, у меня есть новый контроллер "TestChartController" и новый шаблон "testChart / index. html .twig".
У меня есть код учебника: https://github.com/cmen/CMENGoogleChartsBundle/blob/master/Resources/doc/basic_usage.md
Дело 1.
Вот что у меня в IDE:
Контроллер
namespace App\Controller;
use CMEN\GoogleChartsBundle\GoogleCharts\Charts\PieChart;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Routing\Annotation\Route;
use Twig\Environment;
class TestChartController extends AbstractController
{
/**
* @var Environment
**/
private $twig;
public function __construct(Environment $twig)
{
$this->twig = $twig;
}
/**
* @Route("/test/chart", name="testChart")
*/
public function index()
{
return $this->render('testChart/index.html.twig', [
'controller_name' => 'TestChartController',
]);
}
public function indexAction()
{
$pieChart = new PieChart();
$pieChart->getData()->setArrayToDataTable(
[['Task', 'Hours per Day'],
['Work', 11],
['Eat', 2],
['Commute', 2],
['Watch TV', 2],
['Sleep', 7]
]
);
$pieChart->getOptions()->setTitle('My Daily Activities');
$pieChart->getOptions()->setHeight(500);
$pieChart->getOptions()->setWidth(900);
$pieChart->getOptions()->getTitleTextStyle()->setBold(true);
$pieChart->getOptions()->getTitleTextStyle()->setColor('#009900');
$pieChart->getOptions()->getTitleTextStyle()->setItalic(true);
$pieChart->getOptions()->getTitleTextStyle()->setFontName('Arial');
$pieChart->getOptions()->getTitleTextStyle()->setFontSize(20);
return $this->render('testChart/index.html.twig', ['piechart' => $pieChart]);
}
}
Шаблон :
{% extends 'base.html.twig' %}
{% block title %}Hello TestChartController !{% endblock %}
{% block body %}
<!-- index.html.twig -->
<html>
<head></head>
<body>
<div id="div_chart"></div>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
{{ gc_draw(piechart, 'div_chart') }}
</script>
</body>
</html>
{% endblock %}
Но Symfony ответ с фатальной ошибкой:
Ошибка IMG
Я пробовал с простой строкой в моем контроллере:
$test = 'test'
И я изменил рендер:
return $this->render('testChart/index.html.twig', ['test' => $test]);
Наконец-то у меня dump(test)
в моем шаблоне.
Та же ошибка.
Примечание: все остальные шаблоны работают правильно.
Спасибо за вашу будущую помощь.
РАЗРЕШЕНИЕ: Переместите это на вторую функцию indexAction * Действие
/**
* @Route("/test/chart", name="testChart")
*/
Symfony 4.3.2
W1 0