我在Symfony 1应用程序中使用Twitter Bootstrap。我有一个标签式导航,但我想重定向到执行添加操作后的同一个标签。正如您在 Emisores 标签中看到的那样,请参阅此image,执行添加操作后我想要的(是“Crear Nuevo”)我被重定向到同一个标签页。对于重定向,我使用:
$this->redirect('admin/index');
这可能吗?怎么样?
答案 0 :(得分:2)
在您的控制器中
// \apps\myApp\modules\profile\actions\actions.class.php
public function executeUpdate()
{
// Handle form submit and update
$this->getUser()->setFlash('activeTab', 'profile');
$this->redirect('admin/index');
}
现在,在模板中,您可以确定最后一次激活的选项卡是什么,因为您在执行重定向之前将其名称存储在Flash对象中。因此,检索flash值以确定在模板中激活哪个选项卡,如下所示:
// \apps\myApp\modules\admin\templates\indexSuccess.php
<script>
<?php
// Would be better if assigned this in your controller and passed it to the template
$activeTab = $sf_user->getFlash('activeTab', 'default_tab_id');
?>
$('#myTab a[href="#<?php echo $activeTab ?>"]').tab('show');
</script>