Joomla 后端 - 执行任务后重定向到不同的视图

Joomla backend - redirect to different view after performing task

在我的 joomla 组件的后端,我有两个视图:tabledef(这只是默认视图)。

View table 向我们展示了 table 元素列表,我还有一个使用 JToolbarHelper 创建的工具栏,其中包含几个按钮。这些操作由 MyComNameControllerTable 控制器处理。

如何在执行此任务后重定向回 table 视图?

所以在我的情况下,用户在 table -> 任务发送到 def 控制器 -> 我想 return 到 table 视图。

现在我不知道为什么我的控制器在执行任务后重定向到 Def 视图

这是我的控制器:

class MyComponentControllerTable extends JControllerAdmin{
protected $text_prefix = '';

function __construct()
{
    $this->view_list = "table";
    parent::__construct();
}

function getModel($name="Table", $prefix='LandingPageModel', $config=array('ignore_request' => TRUE )){
    $model = parent::getModel($name, $prefix, $config);
    return $model;
}


function myTask(){

      // do something and redirect to Table view
}
}

你会这样做:

function myTask(){

    // do something and redirect to Table view
    $this->setRedirect('index.php?option=com_mycomponent&view=table');
}

但要小心,我认为 "table" 是 Joomla 中的保留字,不应该用作视图名称。此外,列表视图应命名为复数形式并形成单数形式。

  • 列表视图:汽车
  • Form/item 视图:汽车

使用 http://www.component-creator.com 构建您的第一个组件可能更容易,然后查看它为您编写的代码。