在Joomla中如何在视图中调用模型函数?

3
我在我的模型中有以下函数
function abc_list(){

        global $mainframe;

        $db      =& JFactory::getDBO();

            echo '<ul><li class="all"><a class="ajax_all" href="#"/> alle </a></li>';     

                foreach(range('a','z') as $i):{

                                    $query = "SELECT * FROM #__glossary WHERE tterm  LIKE '$i%' AND published = 1";

                                    $db->setQuery( $query );

                                    $css .= '<li class = "searchAbc">';

                                    $rows = $db->loadObjectList();

                                    if ($rows){

                                    $css .= '<a class="button" href="\''.$i.'" value="'.$i.'"/>'.$i.'</a>';}

                                    else {

                                    $css .= $i;    

                                    }

                                    $css .='</li> </ul>';


                                    }
                        endforeach; 

                                    return $css;

         }

我希望在我的视图中展示某些内容,但由于某些原因,这个方法并没有真正起作用。

我尝试了以下方法:

$abc          = $this->get('abc_list');

在这种情况下,$abc变量似乎是空的。
3个回答

7

试试这个:

$model      = $this->getModel();
$abc = $model->abc_list();
var_dump($abc);

我的程序似乎没问题,只是在输出的字符串末尾还有一个空消息,但也许这是一个xdebug消息。 - deroccha

1

要访问不同的模型,请使用:

$model = JModel::getInstance('MODEL_NAME', 'COMPONENTNAME');        
$items= $model->getItems();

0

你应该在函数名前加上get前缀,才能使其正常工作。例如:getabc_list。 最好将其命名为getAbcList并调用$this->get('AbcList')


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接