dongyinju5977 2016-01-06 10:27
浏览 34
已采纳

分形解析包括不工作

I'm using the Laravel framework for my web app, eloquent models for data and Fractal to transform some data.

I want to use the parseIncludes functionality of fractal but I can't seem to get it working despite following the docs.

Here's my code:

StudentTransformer.php

class StudentTransformer extends Fractal\TransformerAbstract
{

    protected $availableIncludes = [
        'course'
    ];

    public function transform(Student $student)
    {
        return [
            'name'           => $student->name,
            // other attributes
        ];
    }

    public function includeCourse(Student $student)
    {
        $course = $student->course;

        return $this->item($course, new CourseTransformer);
    }

}

CourseTransformer.php

class CourseTransformer extends Fractal\TransformerAbstract
{
    public function transform(Course $course)
    {
        return [
            'name' => $course->name
            // other attributes
        ];
    }
}

In one of my controllers:

$student = App\Models\Student::first();

$fractal = new \League\Fractal\Manager();

$fractal->parseIncludes('/student?include=course');

$fractal->setSerializer(new \League\Fractal\Serializer\ArraySerializer());

$response = new \League\Fractal\Resource\Item($student, new \App\Transformers\Models\StudentTransformer);

return response()->json($fractal->createData($response)->toArray());

Also, when I remove the availableIncludes from the StudentTransformer and use defaultIncludes instead, like so:

protected $defaultIncludes = [
    'course'
];

It works just fine?! No idea why! Any help would be appreciated.

  • 写回答

1条回答 默认 最新

  • doudi4621 2016-01-06 10:44
    关注

    Fixed it. For the benefit of others, the issue was here:

    $fractal->parseIncludes('/student?include=course');
    

    It should just be:

    $fractal->parseIncludes('course');
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化