Yii2 gridview小部件如何显示值来代替ID(外键)
我在一个表中有三个外键,我正在使用kartik gridview小部件显示这些记录,我想显示默认情况下显示的外键的值,有人能帮我在哪里进行更改以获得这些记录吗。Yii2 gridview小部件如何显示值来代替ID(外键),gridview,view,yii2,Gridview,View,Yii2,我在一个表中有三个外键,我正在使用kartik gridview小部件显示这些记录,我想显示默认情况下显示的外键的值,有人能帮我在哪里进行更改以获得这些记录吗。 我使用Ajax Crud生成器生成表单和视图 我想你想要这个,我不知道kartik gridview小部件,但这是普通的grid view 在具有外键的模型中,定义规则中的关系: public function rules() { return [ [['added_by'], 'exist', 'skip
我使用Ajax Crud生成器生成表单和视图 我想你想要这个,我不知道kartik gridview小部件,但这是普通的grid view
在具有外键的模型中,定义规则中的关系:
public function rules()
{
return [
[['added_by'], 'exist', 'skipOnError' => true, 'targetClass' => User::className(), 'targetAttribute' => ['added_by' => 'id']],
];
}
在模型本身中添加一个方法:
public function getAddedUser()
{
return $this->hasOne(User::className(), ['id' => 'added_by']);
}
现在在网格视图中,将自定义属性定义为:
['attribute' => 'vendor_id', 'format'=>'raw', 'value' => function($model){
return $model->addedUser->company_name;
}],
希望这能帮助你理解。谢谢。你的问题不清楚。。。您的意思是需要在主表中显示由外键关联的tbales的相关值?如果您需要此功能,您可以查看完整的管理包含过滤器和排序。我只想在我的配置文件表gridview(其中国家Id在配置文件表中为fk)中显示值(比如国家名称)来代替(fk国家Id),我已经使用Ajax Crud生成器为配置文件生成Crud。。如果你需要ajax,你的意思是你正在使用一个可编辑的gridview。。你应该更好地解释你的问题并添加相关代码。你可以像这样获取forignkey\u column\u name0->display\u column\u name我只希望gridview中的值代替表视图中的外键值。你看不到这个链接