yogaiw/rental-kamera

use mass assignment on Payment model

Opened this issue · 0 comments

public function create(Request $request) {
$cart = Carts::where('user_id', Auth::id())->get();
$pembayaran = new Payment();
$pembayaran->no_invoice = Auth::id()."/".Carbon::now()->timestamp;
$pembayaran->user_id = Auth::id();
$pembayaran->total = $cart->sum('harga');
$pembayaran->save();
foreach($cart as $c) {
Order::create([
'alat_id' => $c->alat_id,
'user_id' => $c->user_id,
'payment_id' => Payment::where('user_id',Auth::id())->orderBy('id','desc')->first()->id,
'durasi' => $c->durasi,
'starts' => date('Y-m-d H:i', strtotime($request['start_date'].$request['start_time'])),
'ends' => date('Y-m-d H:i', strtotime($request['start_date'].$request['start_time']."+".$c->durasi." hours")),
'harga' => $c->harga,
]);
$c->delete();
}

better use mass assignment on the Payment model (Payment::create([])), so it can store its id into a variable and then assign it on line 57