【发布时间】:2017-11-19 08:44:52
【问题描述】:
我在控制器中有createCommand
$receipts=new receipts();
$query1 = new Query;
$query1 ->select(['price','date','id'])
->from('paymentreceipts')
->join( 'INNER JOIN','patient','patient.patient_id =paymentreceipts.patient_id' )
->where('patient.patient_id=:id', array(':id'=>$id))
->orderby ('paymentreceipts.date');
$command1 = $query1->createCommand();
$dataProvider1 = $command1->queryAll();
$gridViewDataProvider3 = new \yii\data\ArrayDataProvider([
'allModels' => $dataProvider1,
'sort' => [
'attributes' => ['price','reg_date','id'],
],
]);
return $this->render('view', [
'model' => $this->findModel($id),
'gridViewDataProvider2' => $gridViewDataProvider2,
]);
在 view.php 中
<?=
GridView::widget([
'dataProvider' => $gridViewDataProvider2,
// 'pjax'=>true,
'summary'=>'',
'showFooter' => true,
'columns' => [
['label' => 'رقم الخدمة',
'attribute' => 'id',
],
[
// 'label'=>'url',
'format' => 'raw',
'value'=>function ($data) {
return Html::a('$data->date','#',['class' => 'receipts','id'=>'id']);
},
],
]
]) ?>
我需要的是:将'attribute' => 'id' 编号中的 id 添加到我在此处创建的链接['class' => 'receipts','id'=>'id']);
我使用了'id'=> $gridViewDataProvider2->id,但它不起作用!
我的英文不好,所以可能我的问题不清楚。
【问题讨论】:
-
试试:'id'=> $data->id
-
不行,
Trying to get property of non-object -
和 $model->id ?
-
view.php 中有另一个使用 $model 的网格视图...所以它不会给我真实的 Id
标签: php gridview yii2-advanced-app