我使用extraFields函数将相关表中的字段包含到CallRates端点中。列出记录时,“rate_increase”按预期显示:
{
....
"manually_updated": "no",
"created": "2017-10-13 15:15:43",
"rate_increase": "50.00"
},
但是,单独查看记录时,每次都会显示为空。有没有人有任何想法?我很难过。
为了获取该字段,我在控制器modelFind()中完成了以下操作:
$query = $model::find()
->leftJoin('reseller_config', 'reseller_rate.resellerref = reseller_config.resellerref')
->select('reseller_rate.*, reseller_config.rate_increase');
然后在模型中包括该字段:
public function fields()
{
$fields = array_merge(parent::fields(), ['rate_increase']);
return $fields;
}
答案 0 :(得分:0)
要实施您尝试做的事情,我要做的是:
在reseller_rate表格中添加模型
public function getResellerRate()
{
return $this->hasOne('reseller_config',['reseller_rate.resellerref'=> 'reseller_config.resellerref']);
}
然后在字段功能:
public function fields()
{
$fields = parent::fields();
$fields['rate_increate'] = $this->resellerRate->seller_rate;
return $fields;
}