繁体   English   中英

Joomla:如何将变量从模型中的构造函数传递给视图?

[英]Joomla: How to pass variables from the constructor in the model to the view?

看起来这应该不是那么难,但是给了我适合。

在模型的__construct方法中初始化变量。

需要在view.html.php和default.php文件中访问它们。

在我的模型中:

$this->MyVar = 'somevalue';

在我的view.html.php中:

$model = $this->getModel('mymodelname');
print_r($model) //checking, yes - the model's being pulled in
$myvar = $model->__construct($this->MyVar);
echo $myvar; //empty

我做错了什么,我该如何解决?

谢谢!

=========================================

解:

$model = $this->getModel('mymodelname');
echo $model->MyVar; // returns the variable in the model

__construct()不返回任何值,这就是$myvar保持为null 如果您愿意,可以在这里阅读更多相关信息

根据规范(在上面的链接中),您应该传递给__construct一个可以包含以下一个或多个字段的关联数组:

  • 'name'
  • 'state'
  • 'dbo'
  • 'table_path'

根据你所说的 - 你传递一个参数。 尝试:

$arr = array('name' => $this->MyVar);
$model->__construct($arr);

为什么在实例化模型之后根本使用构造,只需这样做:

$model = $this->getModel('mymodelname');
$model->MyVar = $myvar;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM