我正在尝试向自定义组件添加新视图。我已按照post进行了操作,但说明书对我来说并不十分清楚。
这就是我所做的:
我复制了另一个视图的结构(称为plandetails)
所以现在我有:
site
controllers
helpers
language
models
views
controller.php
billingdetails.php //new controller
plandetails.php //previous controller
plandetails //previous view
tmpl
default.php
metadata.xml
view.html.php
billingdetails //new view
tmpl
default.php
view.html.php
我将billingdetails.php控制器更改为与plandetails.php相同,但使用了billingdetails实例:
defined('_JEXEC') or die;
// Include dependancies
jimport('joomla.application.component.controller');
// Execute the task.
$controller = JController::getInstance('Billingdetails');
$controller->execute(JFactory::getApplication()->input->get('task'));
$controller->redirect();
我使用相应的类更改了billingsdetails文件夹中的view.html.php:
class BillingdetailsViewBillingdetails extends JView
{
// Overwriting JView display method
function display($tpl = null)
{
// Display the view
parent::display($tpl);
}
}
现在在我的default.php(在billingdetails视图文件夹中)我只是回显“TESTING”。如果我转到视图名称为mysite.com/index.php?option=com_plandetails&view=billingdetails
我收到此错误:
View not found [name, type, prefix]: billingdetails, html, plandetailsView
注意:我没有对模型进行任何更改,因为我认为没有必要。我想为这个视图重用相同的方法。
我还缺少什么?
答案 0 :(得分:1)
视图的类名应该是组件的名称,单词View
,然后是视图名称。所以正确的视图类是这样的:
class plandetailsViewBillingdetails extends JView