似乎这不应该那么难,但是让我适合。
在模型的__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
答案 0 :(得分:2)
__construct()
不会返回任何值,这就是$myvar
仍为null
的原因。如果您愿意,可以阅读更多相关信息 here
根据规范(在上面的链接中),您应该传递给__construct
一个可以包含以下一个或多个字段的关联数组:
'name'
'state'
'dbo'
'table_path'
根据你的说法 - 你传递一个参数。试试:
$arr = array('name' => $this->MyVar);
$model->__construct($arr);
答案 1 :(得分:1)
为什么在实例化模型之后完全使用构造只是这样:
$model = $this->getModel('mymodelname');
$model->MyVar = $myvar;