JToolBarHelper方法如何工作?

时间:2016-04-06 03:45:26

标签: php joomla joomla2.5

我试图了解几个星期以来JtoolBarHelper方法是如何工作的。

您可以在此视图类中看到调用的方法:

JToolBarHelper::addNew('controllername.methodname');

这里,JToolBarHelper的addNew方法使用如下:

public static function addNew($task = 'add', $alt = 'JTOOLBAR_NEW', $check = false)
{
    $bar = JToolBar::getInstance('toolbar');
    // Add a new button.
    $bar->appendButton('Standard', 'new', $alt, $task, $check);
}

所以,现在检查一下JToolBar的getInstance方法:

返回new JToolBar($name);。我也投保了检查构造函数。但无处可以找到addNew()方法参数是如何分开的,即。 Joomla如何知道点之前的名称是控制器名称,后面的名称是其方法名称。

我还查看了Joomla.submmitbutton('controllername.methodname');的javascript代码,但找不到。

所以,我的问题是传递给JToolBarHelper方法的参数如何知道它是点之前的控制器名称?

1 个答案:

答案 0 :(得分:0)

此控制器拆分由Joomla核心控制器文件处理。文件路径因版本而异。

JControllerLegacy将在libraries/joomla/controller/legacy.phplibraries/cms/controller/legacy.phplibraries/legacy/controller/legacy.php中定义。最新的Joomla版本。

旧版本使用/libraries/joomla/application/component/controller.php

希望,这很有意义!