Идентификатор последней вставленной записи не может быть получен в laravel - PullRequest
0 голосов
/ 09 апреля 2020

Я пытаюсь напечатать последний вставленный идентификатор записи моей таблицы подписки на полосу,

Это то, что я сделал до сих пор,

public function subscribe(Request $request)
    {

        $user = auth()->user();
        $paymentMethod = $request->payment_method;
        $appId = $request->appId;
        $planId = $request->plan;
        $user->newSubscription('main', $planId)->create($paymentMethod);

        $AppPayment = DB::table('subscriptions')->insertGetId();

        return $AppPayment;
        dd($AppPayment);



       $this->activateApp($appId);


    }

запись создана, но я ' я не получаю вывод дд ..

Ответы [ 3 ]

0 голосов
/ 09 апреля 2020

проверьте ваш массив данных, в этом нет ничего особенного, поэтому идентификатор не получается

$dataArray = [
            'column_name' => $request->inputFieldName,
                  ];
$AppPayment = DB::table('subscriptions')->insertGetId($dataArray);
0 голосов
/ 09 апреля 2020

Это должно работать после создания подписки:

$user->subscription->id;
0 голосов
/ 09 апреля 2020

вам нужно вставить запись сюда! Это должно быть место для вставки записи.

    $id = DB::table('subscriptions')->insertGetId(['foo'=>'bar']);

dd($id);

Обновление , если вы используете кассу, отметьте этот код.

public function subscribe(Request $request)
    {

        $user = auth()->user();
        $paymentMethod = $request->payment_method;
        $appId = $request->appId;
        $planId = $request->plan;
        $subscription = $user->newSubscription('main', $planId)->create($paymentMethod);
        dd($subscription->id);
        return $AppPayment;

       $this->activateApp($appId);


    }
...