2013-03-28 45 views
-1

我在joomla 2.5中有一個組件。如何路由joomla

我有幾個觀點,在那我有一個組合框一個,當我點擊它,我想調用一個函數,我這個

<form class="product_filter" action="<?php echo JURI::root()?>index.php/com_productos/buscarCategoria" method="POST"> 
    <input type="hidden" class="type" name="type" value="HEALTH_FOOD"/> 
    <div class="select_wrapper small first"> 
     <?php echo JHTML::_('select.genericlist', $nameCombo,'name','onChange="this.form.submit()"','value','text'); ?> 
    </div> 

我的組件的名稱是com_productos如此在producto.php我有這個

class ProductosController extends JController 
{ 
    function buscarCategoria(){ 
     $jinput = JFactory::getApplication()->input; 
     $view = $jinput->getCmd('view', 'productos'); 
     JFactory::getApplication()->input->set('view', $view); 
     $model = &$this->getModel($view); 
     $view = &$this->getView($view, 'html'); 
     $view->setModel($model, true); 
     $view->categoria(); 
    } 

但從未執行此功能。

任何想法

回答

1

你應該通過在隱藏字段的任務(和控制器作爲它的一部分)是這樣的:

<input type="hidden" name="task" value="productos.buscarCategoria"/> 

而且你的行動可以簡單的index.php。

+0

嗨@Dmitry Rekun謝謝您的回答,我通過任務就像你說的,並獲得這個錯誤喬斯 - 錯誤:無效的控制器:名稱=「PRODUCTOS」,格式=''你能更好地解釋一下,對不起,我是joomla的新手, – user852610

+0

謝謝@Dmitry Rekun finnaly我解決了這個問題。 – user852610

0

我終於解決了這個問題

 <input type="hidden" name="controller" value="field" /> 
     <input type="hidden" name="option" value="com_productos" /> 
     <input type="hidden" name="task" value="buscarCategoria" /> 
    </form> 
+0

但爲什麼你通過'name =「controller」value =「field」'?你是否將控制器類重命名爲'ProductosControllerField'?考慮閱讀關於控制器的這個:http://docs.joomla.org/JController_and_its_subclass_usage_overview。希望有幫助;) –