0

为什么不在 Rest Yii2 中显示关系数据

我有两张桌子。

示例:类别、子类别

    <?php

namespace app\controllers;

use app\models\Category;
use yii\web\NotFoundHttpException;
use yii\web\Response;
use yii\rest\Controller;

class ApiController extends Controller
{

    public function behaviors()
    {
        $behaviors = parent::behaviors();
        $behaviors['contentNegotiator']['formats'] = ['application/json' => Response::FORMAT_JSON];
        return $behaviors;
    }

    public function actionGetSk($cId)
    {
        $result= Category::find()->with('subCategory')->where(['id' => $cId])->all()

        return $result;
    }
}

结果我只有类别。(结果是 json)

但是 print_r($result) 我有来自类别和子类别的数据。

网页.php

[
'class' => 'yii\rest\UrlRule',
'pluralize' => false,
'controller' => 'api',
],
4

1 回答 1

0

试试这个:在你的Category模型中,添加这个方法:

public function extraFields() {
        return [
            'subcategory' => 'subCategory',
        ];
    }

expand现在,使用get 参数调用您的 api,例如:

http://yourapi.com/api/get-sk?cID=1&expand=subcategory
于 2017-05-09T14:58:15.790 回答