我是yii2
的新人。我在DetailView::widget
中显示了一个表的数据。
我想为另一个表调用另一个DetailView::widget
,然后在同一视图中显示。
答案 0 :(得分:2)
您可以在同一视图中使用两个DetailView
小部件,没有问题。
在控制器中:
use yii\web\NotFoundHttpException;
...
public function actionView($id)
{
$model1 = $this->findModel($id);
$model2 = ModelName::find()->where(['id' => ...])->one();
if (!$model2) {
throw new NotFoundHttpException('Second model not found');
}
return $this->render('view', [
'model1' => $model1,
'model2' => $model2,
]);
}
在视图中:
<div class="col-md-6">
<?= DetailView::widget([
'model' => $model1,
'attributes' => [
'name',
],
]) ?>
</div>
<div class="col-md-6">
<?= DetailView::widget([
'model' => $model2,
'attributes' => [
'name',
],
]) ?>
</div>
关于DetailView
小部件的More信息。