Я знаю, что есть несколько похожих тем, но я прочитал и попробовал большинство из них, но до сих пор не могу понять, как это сделать.
Я написал компонент в Joomla 2.5, и он работает до сих пор. У меня разные представления, и я могу загружать представления с помощью controller.php. В одном из представлений показана таблица из моей базы данных (данные о командах).
Теперь я хотел бы иметь другой макет того же представления, которое отображало бы таблицу базы данных в виде формы, чтобы можно было изменить содержимое.
Это файловая структура:
views/
- team/
- - tmpl/
- - - default.php
- - -modify.php
- - view.html.php
Это из файла view.html.php:
...
// Overwriting JView display method
function display($tpl = null) {
...
$this->setLayout('modify');
echo $this->getLayout();
// Display the view
parent::display($tpl);
}
Я пробовал разные комбинации setLayout, $tpl = ..., default_modify.php и т. д., но всегда либо получаю макет по умолчанию, либо какую-то ошибку, например «не могу найти изменение макета».
Я загружаю сайт с помощью .../index.php?option=com_test&task=updateTeams
И controller.php выглядит так:
function updateTeams(){
$model = $this->getModel('teams');
$view = $this->getView('teams','html');
$view->setModel($model);
$view->display();
}