簡體   English   中英

Yii2 Rest API與用戶分享

[英]Yii2 rest API get post with user

我正在YII2創建REST API。 我通過調用get 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",
}

我使用教程來創建API。

假設在您的post方法中,您具有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
  ];
}

然后,使用expand參數調用REST API,在這種情況下,指定要包含的extraField詳細信息:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM