2017-10-18 95 views
0

我已经在相关表中使用extraFields函数将字段包含到CallRates端点中。当列出记录“rate_increase”如预期的那样显示:Yii2 rest api额外字段

{ 
    .... 
    "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

要实现你想要什么做的,什么是I'do:

  1. 添加在模型中reseller_rate表

    public function getResellerRate() 
    { 
        return $this->hasOne('reseller_config',['reseller_rate.resellerref'=> 'reseller_config.resellerref']); 
    } 
    
  2. 在领域

    然后功能:

    public function fields() { $fields = parent::fields(); $fields['rate_increate'] = $this->resellerRate->seller_rate; return $fields; }