Symfony 重定向到页面的一部分

Symfony redirect to a part of page

我有一个由 3 个部分组成的 symfony 页面(我使用标签来显示每个部分)导航菜单这里是导航菜单。

 <ul class="nav nav-tabs centered">
 <li class="active">
 <a href="#fiche_patient" data-toggle="tab"> {{ 'fiche_pharmacie'|trans }}</a> 
 </li>
 <li>
 <a href="#my_team2" data-toggle="tab"> {{ 'Mon équipe'|trans }} </a>
 </li>
 <li>
 <a href="#config" data-toggle="tab"> {{ 'Configuration_automate'|trans }}</a> 
 </li>
 {#  <li>
 <a href="#tab_3" data-toggle="tab"> {{ 'Services'|trans }} </a>
 </li> #}
 </ul>

之后我调用了 3 个 twig 页面来显示每个页面的内容。

 <div class="tab-pane" id="fiche_patient">
 {{ include(':prof/Entreprise:indexdetails.html.twig') }}
 </div>
 <div class="tab-pane" id="my_team2">
 {{ include(':prof/Entreprise:my-team.html.twig') }}
 </div>
 <div class="tab-pane" id="config">
 {{ include(':prof/Entreprise:config.html.twig') }}
 </div>

我的问题是提交后我想显示 config.html.twig 页面。

我在我的控制器中尝试过:

  return $this->redirect($this-> generateUrl('entreprise_index'.'#config')); 

但是没用 你们中有人有想法吗?

您可以使用 redirectToRoute()

$yourRouteParams = array('param1'=>1);
return $this->redirectToRoute('entreprise_index', $yourRouteParams);

您可以将选项卡名称作为参数发送给 twig。并且,在模板中,根据该参数设置活动选项卡。

您要执行的操作的正确语法是:

return $this->redirect($this->generateUrl('entreprise_index').'#config');