我正在尝试将我创建的视图(表)添加到另一个需要再次出现的视图中。我该怎么做?实际上,我正试图使用loadtemplate函数在另一个视图中添加一个视图。
这是我在视图中键入的内容,但似乎不起作用,有人能帮忙吗?我收到的信息是以下
未找到布局default_reports
<div>
<?php $jinput = JFactory::getApplication()->input;
$jinput->set('view', 'reports');
echo $this->loadTemplate("reports");
$jinput->set('view', 'master');?>
</div>
但观点是存在的。。。
使用loadTemplate
函数,我们只调用视图中的布局。
我们在下面的视图中使用loadtemplate连接两个或多个布局。
默认情况下,joomla通过前缀default_
调用布局。因此,我们必须创建一个布局,因为reports意味着文件名为default_reports.php
,但我们需要像您提到的那样调用布局
echo $this->loadTemplate("reports");
如果您希望能够从当前view.html.php
文件中的另一个"视图"加载"布局",那么您可以按如下方式执行。
$this->addTemplatePath(JPATH_COMPONENT . DIRECTORY_SEPARATOR . 'views' . DIRECTORY_SEPARATOR . 'anotherview' . DIRECTORY_SEPARATOR . 'tmpl');
$this->setLayout('layoutfromanotherview');