Symfony: невозможно добавить дополнительную переменную из моего контроллера в ветку

У меня проблема со следующим кодом:

контроллер

$langage = $request->request->get('langage-choisis');
$baturl = "href=\"http://localhost:8000/?keyview = ".$keypreview."&order = ".$numerocommande."&watch=yes"."\"";

$message = (new \Swift_Message($subject))
    ->setFrom('[email protected]')
    ->setTo( $destinataires)
    ->setBody(
        $this->renderView('emails/contact.html.twig', [
            'IdOrder' => $langage,
            'messagegraphist' => $messagegraphist,
            'messageinvoice' => $messageinvoice,
            'baturl'=> $baturl,
            'mailinstructions' => $mailinstructions,
            'ordrefabrication' => $ordrefabrication,
            'langage' => $langage,
        ]),
       'text/html'
    );

$mailer->send($message);

ветка-шаблон

{% block email %}
    <p>Bonjour,
        <br/> Nos équipes ont terminées la préparation du BAT pour votre commande n°{{ IdOrder  }}.
        <br>Si votre commande comporte plusieurs articles, vous recevrez un BAT par article.
        <br>Nous soulignons que nos dates de production et d'expédition courent à date de validation du présent BAT.<br>
        {% if messagegraphiste is defined %}
            <p><b>Précision de notre service graphique : </b></p>
        <br>{{ messagegraphist  }}<br>
        {% endif %}
        <br>{{ messageinvoice | raw}} <br>
    <p><a style = "color: white; padding: 20px 20px; background-color: #19692c" {{ baturl | raw}} ><b>VOIR LE BAT</b></a></p>
    <br>{{ mailinstructions | raw}}<br>
    Notre équipe vous souhaite une agréable journée.
    </p>
{{ langage }}
{% endblock %}

Эта ошибка возвращена

Что непонятно, так это то, что я не могу добавить дополнительную переменную без этой ошибки. Однако я дал $langage в качестве значения переменной «IdOrder», и это работает. Но когда я хочу добавить переменную в свою таблицу: невозможно. Я также пытался присвоить «языку» другое значение (например, $orderfabrication), но оно остается неопределенным, в то время как «orderfabrication» работает. У кого-нибудь есть идея? Спасибо :)

Не могли бы вы предоставить весь код контроллера? что показывает дамп($langage)?

letibelim 17.07.2019 13:21

@letibelim предоставленного кода достаточно, чтобы продемонстрировать проблему

DarkBee 17.07.2019 14:46

пожалуйста, покажите (полный) emails/contact.html.twig. Я подозреваю, что добавленная вами переменная каким-то образом выходит за рамки, вероятно, не используя блок только что, а какой-то вложенный блок/включить/встроить/расширить

Jakumi 17.07.2019 16:59

(также показывать включенные/встроенные шаблоны).

Jakumi 17.07.2019 17:06

@DarkBee Это скорее бесполезный комментарий. Даже если это так, это может помочь другим, не позволяя им делать предположения о пропущенном коде. И на этот вопрос еще не было ответа, поэтому нет никакой возможности увидеть остальную часть кода.

letibelim 18.07.2019 15:15

Нет смысла публиковать полный контроллер, поскольку вы можете ясно видеть, что OP передает переменные в twig. Причина, по которой я не опубликовал ответ, заключается в том, что он должен работать как есть. Также $langage содержит правильное значение, так как OP проверил значение, присвоив его IdOrder.

DarkBee 18.07.2019 15:23

Наверное стоит почистить кеш

ste 18.07.2019 17:56
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
7
115
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Спасибо за вашу помощь. Впрочем, я уже думал об очистке кеша. Кроме того, это весь мой файл электронной почты / contact.html.twig. Дамп также использовался для проверки значения $language, которое хорошо определено (проверено в contact.html.twig с $IdOrder). Итак, я пытаюсь очистить компьютер.

Другие вопросы по теме