关系数据字段显示在Yii2详细信息视图中

时间:2018-03-26 08:00:02

标签: php yii2

我通过外键KHDN

有一个表Loaihinh引用表loaihinh_ten

Loaihinh

  • 十个int identity主键; //
  • loai varchar(100);

KHDN

  • ...字段
  • loaihinh_ten:外键引用Loaihinh(十)

如果我想展示Loaihinh,我该怎么办? loai代替khdn / views.php中的外键loaihinh_ten Yii2

<?php

use yii\widgets\DetailView;

/* @var $this yii\web\View */
/* @var $model common\models\Khdn */
?>
<div class="khdn-view">

    <?= DetailView::widget([
        'model' => $model,
        'attributes' => [
            'id',
            'ten:ntext',
            'chudautu:ntext',
            'ngaybatdau:ntext',
            'ngayhoanthanh:ntext',
            'giatri:ntext',
            'trangthai_ten',
            'diachi:ntext',
            'ghichu:ntext',
            'loaihinh_ten',
        ],
    ]) ?>

</div>

非常感谢你!

2 个答案:

答案 0 :(得分:2)

使用

$model->relationName->fieldName

示例:

 /**
 * @return \yii\db\ActiveQuery
 */
 public function getLoaihinh()
{
    return $this->hasOne(KHDN::className(), ['id' => 
      'loaihinh_ten']);
}

然后在视图中使用以下关系:

 $model->loaihinh->loai;

答案 1 :(得分:0)

有很多方法可以做这件事。您可以使用以下任何方法解决此问题。

你不需要为此使用joinWith方法,你可以在程序中的任何位置使用

获取关系数据
  

$模型 - &GT; relation_name_decleared_in_model

下面的

是使用

的示例代码
\begin{lstlisting}[caption={foo}]
    test
\end{lstlisting}