@startproger

Как в разные блоки передавать разные переменные в TWIG?

Допустим у меня есть base.html.twig в котором несколько блоков: head, breadcrumbs ну и основной content.

Когда я делаю рендеринг шаблона (base или того, который наследует base), я могу передать все переменные которые у меня есть в шаблон и они все будут видимы во всех блоках.

Можно ли сделать так, чтобы при рендеринге определить в какой блок какие переменные поступают? Чтобы одни переменные были видны только в одном блоке и ни в каком другом.

Пример, это будет base
<!DOCTYPE html>
<html>
	<head>
		<!-- Тут просто какой-то код -->
	</head>
	<body>
		<!-- Тут, допустим, хлебные крошки -->
		{% block breadcrumbs %}
			{% for breadcrumb in breadcrumbs %}
				<a href="{{ breadcrumb.link }}">{{ breadcrumb.title }}</a>
			{% endfor %}
		{% endblock %}
		
		<!-- Тут основной блок: -->
		{% block content %}{% endblock %}
	</body>
</html>


А это шаблон какого-то контента:
{% extends "base.twig" %}

{% block content %}
	<!-- Тут контент основного блока -->
{% endblock %}


Я хочу сделать так, чтобы переменные, видимые внутри блока breadcrumbs не были видны внутри блока content, и наоборот. Если это конечно возможно.
  • Вопрос задан
  • 312 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы