/ / Twig com symfony substituindo problemas de bloco - symfony, twig

Modelo de galho com symfony substituindo problemas de bloco - symfony, galho

Eu tenho um problema está substituindo o modelo. Aqui está o meu código simples

Em commonHeader.html.twig

{% block topsearch %}
<div class="col-md-6 col-sm-6 col-xs-6 col-lg-6 col-search">
<form action="" method="post" class="navbar-form navbar-left form-inline nav-form-search">
<div class="form-group col-md-12 form-search">
<label class="sr-only" for="search">Search</label>
<div class="input-group search-input-group col-md-12">
<input type="text" class="form-control input-search" id="search" placeholder="find...">
<div class="input-group-addon btn-search-addon">
<button type="submit" name="search" class="btn btn-icon-search">
<span class="glyphicon glyphicon-search" aria-hidden="true"></span>
</button>
<button type="submit" name="search" class="btn btn-text-search">SEARCH</button>
</div>
</div>
</div>
</form>
</div>
{% endblock %}

No arquivo commonPage.html.twig, eu faço assim:

{% block header %}
{{ include("::commonHeader.html.twig") }}
{% endblock %}
{% block content %}{% endblock %}

E tenho muitos layouts que se estendem do commonPage.html.twig. E em cada layout, a pesquisa tem um URL de ação diferente, por isso preciso substituí-lo.

Ex. em myLayout.html.twig Eu quero gostar disso

{% extends "::commonPage.html.twig" %}
<!-- start overriding search here -->
{% block topsearch %}
<div class="col-md-6 col-sm-6 col-xs-6 col-lg-6 col-search">
<form action="mynewactionurl" method="post" class="navbar-form navbar-left form-inline nav-form-search">
<div class="form-group col-md-12 form-search">
<label class="sr-only" for="search">Search</label>
<div class="input-group search-input-group col-md-12">
<input type="text" class="form-control input-search" id="search" placeholder="find...">
<div class="input-group-addon btn-search-addon">
<button type="submit" name="search" class="btn btn-icon-search">
<span class="glyphicon glyphicon-search" aria-hidden="true"></span>
</button>
<button type="submit" name="search" class="btn btn-text-search">SEARCH</button>
</div>
</div>
</div>
</form>
</div>
{% endblock %}

{% block navigationleft %}
{% endblock %}

O problema é que não consigo substituir o bloco de pesquisa em myLayout.html.twig? Obrigado pela sua ajuda!

Respostas:

1 para resposta № 1

Então você só precisa corrigir o layout de acordo,Eu acho que é porque você precisa definir seus blocos no galho principal, não sei como o mecanismo do galho processa as inclusões, mas defina seu bloco no galho principal e depois inclua o que você precisa, não inclua blocos e tente substituí-los . é assim que nosso base.html.twig é definido. todos os nossos blocos estão dentro, então nós os substituímos.