如何在gridview yii advanced中获取相关数据
这是我的AttributeLang模型如何在gridview yii advanced中获取相关数据,gridview,yii2,Gridview,Yii2,这是我的AttributeLang模型 <?php namespace backend\models; use Yii; class AttributeLang extends \yii\db\ActiveRecord{ public static function tableName() { return 'attribute_lang'; } /** * @inheritdoc */ public function rules() { return [
<?php
namespace backend\models;
use Yii;
class AttributeLang extends \yii\db\ActiveRecord{
public static function tableName()
{
return 'attribute_lang';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['id_attribute', 'id_lang', 'name'], 'required'],
[['id_attribute', 'id_lang'], 'integer'],
[['name'], 'string', 'max' => 128]
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'id_attribute' => Yii::t('app', 'Id Attribute'),
'id_lang' => Yii::t('app', 'Id Lang'),
'name' => Yii::t('app', 'Name'),
];
}
/**
* @return \yii\db\ActiveQuery
*/
public function getIdLang()
{
return $this->hasOne(Lang::className(), ['id_lang' => 'id_lang']);
}
/**
* @return \yii\db\ActiveQuery
*/
public function getIdAttribute()
{
return $this->hasOne(Attribute::className(), ['id_attribute' => 'id_attribute']);
}
这是我的视图文件
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'id_attribute',
'id_attribute_group',
'color',
'position',
],
]); ?>
“id\U属性”、“id\U属性\U组”、“颜色”、“位置”列位于属性表中
如何在gridview中显示属性_lang表中的额外cloumn“name”
如果我打印$color,结果如下图所示。如果您使用gii生成模型,并且如果您想在属性视图中显示相关属性的名称,则应该是这样的:“attributeLang.name”请显示此视图的控制器。我已添加了控制器。请同时添加attributeLang模型(完整)请注意,属性和属性是两种不同的模型?。。并且添加了您显示的与哪个模型相关的控制器)模型。那么,如何显示相关的列名呢?
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'id_attribute',
'id_attribute_group',
'color',
'position',
],
]); ?>