具有symfony覆盖块问题的细枝模板

具有symfony覆盖块问题的细枝模板,symfony,twig,Symfony,Twig,我遇到一个问题是覆盖模板。这是我的简单代码 在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">

我遇到一个问题是覆盖模板。这是我的简单代码

在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 %}
我有许多从commonPage.html.twig扩展而来的布局。 在每个布局上,搜索都有不同的操作url,所以我需要覆盖它

例如,在myLayout.html.twig中,我想喜欢这个

{% 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 %}
{%extends”::commonPage.html.twig“%}
{%block topsearch%}
搜寻
搜寻
{%endblock%}
{%block navigationleft%}
{%endblock%}
问题是我无法覆盖myLayout.html.twig中的搜索块?
谢谢你的帮助

然后您只需要相应地修改布局,我认为这是因为您需要在主细枝中定义块,我不确定细枝引擎如何呈现包含,但在主细枝中定义块,然后包含您需要的,不包含块,然后尝试覆盖它们。这就是base.html.twig的定义。我们所有的块都在里面,然后我们覆盖它们。

似乎正确,您有什么错误?很简单,您没有看到正确的操作表单吗?我这样做了,但仍然显示了旧的搜索表单,而不是使用在action=“editor/search”(只是一个示例)中经过的url。如果您将commonpage中的block topsearch放入头中,例如{%block header%}{%block topsearch%}{{include('::commonHeader.html.twig')}{%endblock%}{%endblock%},会发生什么我为我工作,但它破坏了我的布局,所以像这样它覆盖了topsearch?
{% 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 %}