Autour de Laravel

Table pivot et insertion de donnees

Avatar de la_preuve
la_preuve

Salu la team je tente d'attacher une liste de produit issuent su Cart (ShopingCart) a une facture lorsque je genere le pdf mais je rencontre un probleme.

  1. $facture->produits()->attach([$facture->id, array_keys($cart->items)]); ( la ligne qui pose probleme)

public function export_pdf(Request $request, Produit $produit) { // $this->authorize('print', Produit::class); $oldCart = Session::get('cart'); $cart = new Cart($oldCart); $produit = DB::table('produits')->where('id', $cart->items);

    $facture = Facture::create([
       'numero' => mt_rand(10000, 999999),
       'quantite_total' => $cart->totalQte,
       'prix_total' => $cart->totalPrix
    ]);

    $facture->produits()->attach([$facture->id, array_keys($cart->items)]);

    $pdf = PDF::loadView('admin.etats.pharmacie', ['produit' => $produit, 'produits' => $cart->items, 'totalPrix' => $cart->totalPrix]);

    $pdf->save(storage_path('pharmacie').'.pdf');

// Session::forget('cart'); return $pdf->stream('pharmacie.pdf'); }

2) (l'erreur que j'obtient)

SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 2 (SQL: insert into facture_produit (facture_id, produit_id) values (8, 8), (1, 8, 1, 2))

Posté il y a 1 an

Vous ne pouvez pas répondre à ce sujet.