编程语言
首页 > 编程语言> > php – 改变Joomla 2.5中的视图布局

php – 改变Joomla 2.5中的视图布局

作者:互联网

我知道有几个类似的主题,但我阅读并尝试了大多数但仍然无法弄清楚如何做到这一点.

我在Joomla 2.5中编写了一个组件,它到目前为止一直有效.我有不同的视图,我可以使用controller.php加载视图.
其中一个视图显示了我的数据库中的表格(有关团队的数据).

现在我想要另一个相同视图的布局,它将数据库表显示为一个表单,以便更改内容.

这是文件结构:

意见/
– 团队/
– – 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();
}

解决方法:

我遇到了类似的问题,我创建了某种用户配置文件视图,并希望它们能够编辑字段而无需为其创建新模型(具有类似的功能,讨厌冗余……).对我有用的是简单地调用这样的布局:

index.php?option = com_mycomponent& view = myview& layout = edit(“edit”在你的情况下将是“修改”)

要做到这一点,我没有触及view.html.php(我最初做过,但我没有.).而且您也不需要使用控制器.如果要加载修改视图,只需在常规视图中添加一个链接到修改布局的按钮.无需改变任何其他内容.

我碰巧写了一篇关于它的博客文章,如果你愿意,请查看:http://violetfortytwo.blogspot.de/2012/11/joomla-25-multiple-views-one-model.html

希望这可以帮助.

标签:joomla2-5,php,templates,joomla,joomla-component
来源: https://codeday.me/bug/20190831/1776387.html