У меня проблема со следующим кодом:
контроллер
$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» работает. У кого-нибудь есть идея? Спасибо :)
@letibelim предоставленного кода достаточно, чтобы продемонстрировать проблему
пожалуйста, покажите (полный) emails/contact.html.twig
. Я подозреваю, что добавленная вами переменная каким-то образом выходит за рамки, вероятно, не используя блок только что, а какой-то вложенный блок/включить/встроить/расширить
(также показывать включенные/встроенные шаблоны).
@DarkBee Это скорее бесполезный комментарий. Даже если это так, это может помочь другим, не позволяя им делать предположения о пропущенном коде. И на этот вопрос еще не было ответа, поэтому нет никакой возможности увидеть остальную часть кода.
Нет смысла публиковать полный контроллер, поскольку вы можете ясно видеть, что OP
передает переменные в twig. Причина, по которой я не опубликовал ответ, заключается в том, что он должен работать как есть. Также $langage
содержит правильное значение, так как OP
проверил значение, присвоив его IdOrder
.
Наверное стоит почистить кеш
Спасибо за вашу помощь. Впрочем, я уже думал об очистке кеша. Кроме того, это весь мой файл электронной почты / contact.html.twig. Дамп также использовался для проверки значения $language, которое хорошо определено (проверено в contact.html.twig с $IdOrder). Итак, я пытаюсь очистить компьютер.
Не могли бы вы предоставить весь код контроллера? что показывает дамп($langage)?