Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 集合资源laravel api中的传递变量_Php_Laravel_Api_Resources - Fatal编程技术网

Php 集合资源laravel api中的传递变量

Php 集合资源laravel api中的传递变量,php,laravel,api,resources,Php,Laravel,Api,Resources,我有这个功能 public function activityAutoDeposit(GoalRequest $request) { $goal = Goal::find($request->input('goal_id')); if($goal->user_id != auth()->id()) { return $this->responseData([], 'forbidden card', true); } $sch

我有这个功能

public function activityAutoDeposit(GoalRequest $request)
{
    $goal = Goal::find($request->input('goal_id'));
    if($goal->user_id != auth()->id()) {
        return $this->responseData([], 'forbidden card', true);
    }
    $schedule_deposit = DB::table('rules')
        ->join('cards', 'rules.card_id', '=', 'cards.id')
        ->join('rules_schedule_deposits', 'rules.id', '=', 'rules_schedule_deposits.rule_id')
        ->select('rules_schedule_deposits.*')
        ->where('table', '=', 'rules_schedule_deposits')
        ->where('cards.user_id', '=', auth()->id())
        ->get();

   
    return $this->responseData(AutoDepositResource::collection($schedule_deposit ,$goal->distribution->percentage ));
}
我想将变量
$goal->distribution->percentage
传递给资源集合。。我在AutoDepositorResource类中编写了这个构造函数

public $att;

public function __construct($resource , $att)
{
    #parent::__construct($resource);
    $this->resource = $resource;
    $this->att = $att;
}

但是我得到的值是0,1,2++。。我没有收到正确的值

JsonResource不支持多个参数。使用单个资源参数

public function activityAutoDeposit(GoalRequest $request)
{
    $resource = (object) [
        'schedule_deposit' => $schedule_deposit,
        'goal_distribution_percentage' => $goal->distribution->percentage,
    ];

    return $this->responseData(
        AutoDepositResource::collection($resource)
    );
}
class AutoDepositResource extends JsonResource
{
    public function toArray($request)
    {
        return [
            'schedule_deposit' => $this->schedule_deposit,
            'goal_distribution_percentage' => $this->goal_distribution_percentage,
        ];
    }
}