如何设置别名而不是id,我需要category_id而不使用forloop


$categoryData = $this->compCatObj->find()->select(['CompanyCategory.id', 'CompanyCategory.name','CompanyCategory.restricted'])->contain(['CompanyItems'=>['fields'=>['CompanyItems.id','CompanyItems.company_category_id','CompanyItems.name']]])->toArray();

响应

{
    "status": "success",
    "message": "List of company categories",
    "data": [
        {
            "id": 1,
            "name": "Breakfast  gdfgedfgdf",
            "restricted": "no",
            "company_items": []
        },
        {
            "id": 2,
            "name": "Breakfast",
            "restricted": "yes",
            "company_items": []
        }
    ]
}

我需要category_id而不是 ID。有没有办法在不使用 forloop 的情况下做到这一点。

是的,您可以通过对代码进行少量更改来做到这一点,

$categoryData = $this->compCatObj->find()->select(['category_id' => 'CompanyCategory.id', 'CompanyCategory.name','CompanyCategory.restricted'])->contain(['CompanyItems'=>['fields'=>['CompanyItems.id','CompanyItems.company_category_id','CompanyItems.name']]])->toArray();

响应

{
"status": "success",
"message": "List of company categories",
"data": [
    {
        "category_id": 1,
        "name": "Breakfast  gdfgedfgdf",
        "restricted": "no",
        "company_items": []
    },
    {
        "category_id": 2,
        "name": "Breakfast",
        "restricted": "yes",
        "company_items": []
    }
  ]
}

相关内容

最新更新