2017-10-18 113 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; }