Я новичок в php и Symfony, и я создал свой пакет с помощью команды php app / console, следуя указаниям Symfony. Существует 2 окружения, dev и prod, и я без проблем использую dev с самого начала, с Symfony «Код за этим» и профилировщиками sql и form, отображаемыми внизу каждой отображаемой страницы.
Когда я переключаюсь на prod, используя app.php вместо app_dev.php, весь код нарушается. Тот, который очень настойчив, тот, что в Twig: функция «code» не существует. Вот код в ветке:
{% set code = code(_self) %}
Я пытался обернуть его внутри if defined
как задокументировано на сайте Twig, но ошибка сохраняется:
{% if _self is defined and code(_self) is defined %}
{# if code is defined #}
{% set code = code(_self) %}
{% endif %}
оба способа проверки if defined
не имеет никакого эффекта вообще. Я очистил кеш и даже перезагрузил компьютер, но ошибка не исчезла. Однако, если я переключаюсь обратно на использование app_dev.php, все работает, но я все равно вижу консоль профилировщика и код, стоящий за этим. Я не хочу удалять код, поскольку представление профилировщика очень полезно при разработке. Любое предложение?
Проблема в том {{code }}
не является расширением для веток или не предоставляется веткой. Это расширение предоставляется ‘Demobundle’ для получения дополнительной информации см. это
Других решений пока нет …