将ActiveForm放入Gridview列Yii2
如何将ActiveForm放入gridview列中?下面是我编写的代码:我试图呈现页面,使其包含我需要的活动表单将ActiveForm放入Gridview列Yii2,yii2,yii2-advanced-app,Yii2,Yii2 Advanced App,如何将ActiveForm放入gridview列中?下面是我编写的代码:我试图呈现页面,使其包含我需要的活动表单 'columns' => [ [ 'format' => 'html', 'value'=> function($data) { return Html::img($data->imageurl) . " <p class='feedback-username'>" . $data->userna
'columns' => [
[ 'format' => 'html',
'value'=> function($data) { return Html::img($data->imageurl) . " <p class='feedback-username'>" . $data->username . "</p>"; },
'contentOptions'=>['style'=>'width: 30px; height: 30px'],
],
[ 'format' => 'raw',
'value' => function($model) { return "<p class='feedback'>". $model->KOMENTAR ."</p><br><p class='feedback-date'>". $model->TANGGAL ."</p><hr><div id='replay-". $model->ID_KOMENTAR."'><ul></ul></div>";},
],
[ 'format' => 'raw',
'contentOptions'=>['style'=>'width: 5px;'],
'value' => function($model) {
if($model->id == Yii::$app->user->identity->id) {
return Html::a('<i class="glyphicon glyphicon-share-alt"></i>',null,['id'=> 'replay-to-'. $model->ID_KOMENTAR ]).' '.
Html::a('<i class="glyphicon glyphicon-pencil"></i>', ['update', 'id' => $model->id]).' '.
Html::a('<i class="glyphicon glyphicon-trash"></i>', ['delete', 'id' => $model->id], ['data' => ['confirm' => 'Do you really want to delete this element?','method' => 'post']]);
}
return Html::a('<i class="glyphicon glyphicon-share-alt"></i>',['feedback', 'id' => $model->id],['id'=> 'replay-to-'. $model->ID_KOMENTAR ]);
},
],
[
'content' => $this->render('feedback_test'),
],
“列”=>[
[“格式”=>“html”,
'value'=>函数($data){return Html::img($data->imageurl)。“”“$data->username。”
”;},
“内容选项”=>[“样式”=>“宽度:30px;高度:30px'],
],
[“格式”=>“原始”,
'value'=>函数($model){return“”。
。“$model->TANGGAL。”
”;),
],
[“格式”=>“原始”,
“内容选项”=>[“样式”=>“宽度:5px;”],
“值”=>函数($model){
如果($model->id==Yii::$app->user->identity->id){
返回Html::a(“”,null,['id'=>'重播到-'.$model->id_KOMENTAR])。'。
Html::a(“”,['update','id'=>$model->id])。'。
Html::a(“”,['delete','id'=>$model->id],'data'=>['confirm'=>'是否确实要删除此元素?','method'=>'post']]);
}
返回Html::a(“”,['feedback','id'=>$model->id],'id'=>replay to-'.$model->id_KOMENTAR]);
},
],
[
'content'=>$this->render('feedback_test'),
],
但我有一个错误:
PHP Warning – yii\base\ErrorException
call_user_func() expects parameter 1 to be a valid callback, function '
<div class="feedback-form">
<p>test</p>
</div>' not found or invalid function name
PHP警告–yii\base\ErrorException
call_user_func()要求参数1为有效回调函数'
试验
'未找到或函数名无效
如何在网格视图的列中包含活动窗体?试试这个
[
'content' => function($model, $key, $index, $column) {
echo $this->render('feedback_test');
OR
echo $this->render('feedback_test', ['model' => $model]);
},
],
上面的答案将表单输出到我的网格上方。我希望表单位于我的每一行数据的一列中。我最终自定义了一个ActionColumn,如下所示:
[
'class' => 'yii\grid\ActionColumn',
'template' => '{map}',
'contentOptions' => ['class' => 'text-center'],
'buttons' => [
'map' => function ($model) use ($m, $r) {
return $this->render('_form', ['model' => $m, 'req' => $model, 'ref' => $r]);
},
],
'urlCreator' => function ($action, $model) {
if ($action === 'map') {
return $model;
}
},
]