2017-04-11 79 views
0

我在YII2中創建REST API。我通過調用get APIYii2 rest API與用戶發帖

/post/ 
/post/1/ 

讓所有職位數據,但我想獲得用戶還張貼特定職位誰。

例如我想數據在下格式

{ 
     "id":"1", 
     "title":"kapil", 
     "content" : "test", 
     "user" : { 
     "username":"admin", 
     "first_name":"kapil", 
     "last_name":"sharma", 
      //blah blah 
     } 

} 

但是響應是

{ 
      "id":"1", 
      "title":"kapil", 
      "content" : "test", 
} 

我用this教程創建API。

+0

你的代碼在哪裏? –

+0

我剛創建控制器,其餘的工作都是默認完成Yii2 REST API格式 –

回答

1

讓我們在您的文章的方法說你有getIdUser()關係:

public function getIdUser() { 
    return $this->hasOne(User::className(), ['id' => 'user_id']); 
} 

在這個模型中,你應該利用extraFields()方法,具體如下:

public function extraFields() { 
    return [ 
    'user' => 'idUser' // or the name you hasOne relation with user has 
    ]; 
} 

然後,你打電話您的REST API與expand參數,指定您要包含哪些extraField的詳細信息:

http://example.com/post/view?id=1&expand=user

+0

如何創建關係。我是Yii的新人 –

+0

謝謝你的工作.. –