2017-11-18 182 views
0

我尽力解决这个问题,但我似乎无法弄清楚问题所在。这里是我的代码:Yii2-未定义的变量:模型

在动作控制器

return $this->render('viewcreated', [ 
      'dataProvider' => $dataProvider, 
      'model' => $this->findModel($id), 
      'id' => $model->id 
      /*'searchModel' => $searchModel*/ 
     ]); 

查看

$this->title = $model->id; // here it gives the error 

我怎样才能解决这个问题?

任何帮助将高度赞赏

+0

删除线“身份证” => $模型 - > ID在控制器 –

+0

你确定你收到此错误通过VAR $model直接访问在视图文件? –

回答

1

删除线“身份证” => $模型 - > ID,因为你还没有宣布$模型在任何地方使用它的价值,所以它给错误简单。

enter code here 

你可以做到这一点的,

$model= $this->findModel($id); 
return $this->render('viewcreated', [ 
      'dataProvider' => $dataProvider, 
      'model' =>$model, 
      'id' => $model->id 

     ]); 
0

所以$模型对象可用于所有索引您访问在渲染调用

您必须检索渲染调用之外$模型中的价值
$model= $this->findModel($id); 

一旦你完成了所有与$ model对象有关的属性都可用,避免重新声明,所以你可以这样调用渲染

return $this->render('viewcreated', [ 
     'dataProvider' => $dataProvider, 
     'model' =>$model, 
    ]); 

鉴于值$model->id应该是对指数“模型”