Laravel 6

Missing required parameters for [Route: cart.destroy]

Avatar de LouisRobredo
LouisRobredo

Bonjour a tous j'obtiens cette erreur Missing required parameters for [Route: cart.destroy] [URI: cart/{product}]. (View: C:\wamp64\www\jeffCommerce\resources\views\cart.blade.php) après avoir fait un form dans mon cart.blade @csrf @method('delete') Supprimer

Ma route Route::delete('/cart/{product}', 'CartController@destroy')->name('cart.destroy');

Posté il y a 2 ans
Avatar de KYoann
KYoann

Salut,

Tu l'appel comment depuis ton form cette route ?

Posté il y a 2 ans
Avatar de LouisRobredo
LouisRobredo

Salut voici mon form

<form action="{{ route('cart.destroy', $product->rowId) }}" method="POST">
                                    @csrf
                                    @method('delete')
                                    <button type="submit" class="btn btn-link">Supprimer</button>
                                </form>
Posté il y a 2 ans
Avatar de CinquièmeDimension
CinquièmeDimension

Attention le method="POST" avec le @method('delete'). Ca donne quoi ce form en front ? Tu peux nous envoyer ton form depuis le navigateur ?

Posté il y a 2 ans
Avatar de LouisRobredo
LouisRobredo

Une capture d'écran vous voulez de l'erreur?

Posté il y a 2 ans
Avatar de CinquièmeDimension
CinquièmeDimension

Non, tu fais click droit et afficher loe code source. Ensuite tu cherche (ctrl + f) ton formulaire avec genre <button type="submit" class="btn btn-link">Supprimer</button>. Tu nous poste ensuite ce formulaire.

Posté il y a 2 ans
Avatar de LouisRobredo
LouisRobredo

Désolé mais il n'y a rien de tout ça dedans..

Posté il y a 2 ans
Avatar de KYoann
KYoann

Essai de spécifier le parametre que tu envoi à ta route

action="{{ route('cart.destroy', ['product' => $product->rowId]) }}"
Posté il y a 2 ans
Avatar de LouisRobredo
LouisRobredo

Merci mais j'obtiens la même erreur Missing required parameters for [Route: cart.destroy] [URI: cart/{product}]. (View: C:\wamp64\www\jeffCommerce\resources\views\cart.blade.php)

Posté il y a 2 ans
Avatar de CinquièmeDimension
CinquièmeDimension

Fais un click droit sur ton bouton "Supprimer" et fait "Inspecter" ("Inspecter" si t'es sur Chrome ou "Examiner l'élément" si t'es sur Forefox). Tu nous envoie une capture d'écran de la console qui s'est affichée...

Posté il y a 2 ans
Avatar de LouisRobredo
LouisRobredo

J'ai du commenter la 1er ligne de mon form pour faire apparaître le bouton sur le site https://zupimages.net/viewer.php?id=20/30/s4nn.png

{{-- <form action="{{ route('cart.destroy', $product->rowId) }}" method="POST"> --}}
                                    @csrf
                                    @method('delete')
                                    <button type="submit" class="btn btn-link">Supprimer</button>
                                </form>
Posté il y a 2 ans
Avatar de CinquièmeDimension
CinquièmeDimension

Ah OK au temps pour moi oui j'avais pas compris que c'est la page qui ne s'affichait pas. Je pensais que c'était à la soumission du form. Dans ce cas, fait un {{ dd($product) }} pour vérifier que ton rowID existe bien et n'est pas null.

Dans ton post d'hier, tu faisait des $product->model->name. Donc ce serait pas plutôt $product->model->id au lieu de $product->rowID ?

Posté il y a 2 ans
Avatar de LouisRobredo
LouisRobredo

comme ceci?

https://zupimages.net/viewer.php?id=20/30/y2lr.png

Darryldecode\Cart\ItemCollection {#1580 ▼
  #config: null
  #items: array:7 [▼
    "id" => "1"
    "name" => "Mangue / Passion"
    "price" => 6.0
    "quantity" => 2
    "attributes" => Darryldecode\Cart\ItemAttributeCollection {#1585 ▼
      #items: []
    }
    "conditions" => []
    "associatedModel" => "App\Product"
  ]
}
Posté il y a 2 ans
Avatar de CinquièmeDimension
CinquièmeDimension

Oui donc rowID n'existe pas. Essaie avec $product->id au lieu de $product->rowID

Posté il y a 2 ans
Avatar de LouisRobredo
LouisRobredo

Putain bravo c'était ça :) Un grand merci sérieux vous m'aviez bien aidé super sympa j'espère que je vais pouvoir vous laisser tranquil :)

Posté il y a 2 ans
Avatar de CinquièmeDimension
CinquièmeDimension

Cool. Il faut bien penser à vérifier si une variable existe avant de l'utiliser pour la première fois.

N'hésite pas à marquer les sujet corrigés en résolu aussi :)

Posté il y a 2 ans
Avatar de delacoche28
delacoche28

bonjour , j'ai le meme proble sur un de mes formulaire , mais avec $taches->id et j'ai une erreur : Missing required parameters for [Route: taches.update] [URI: taches/{tach}]. (View: /Users/delacochesilver/XAMPP/xamppfiles/htdocs/chosesafaire/resources/views/edit.blade.php)

Posté il y a 1 an
Avatar de delacoche28
delacoche28

mon formulaire : @extends('template') @section('content')

            <div class="field">
                <label class="label">Detail</label>
                <div class="control">
                    <textarea class="textarea" name="detail" placeholder="Detail de la tache">{{ old('detal', $tache->detail) }}</textarea>
                </div>
                @error('detail')
                    <p class="help is-danger">{{ $message }}</p>
                @enderror
            </div>

            <div class="field">
                <div class="control">
                  <button class="button is-link">Valider</button>
                </div>
            </div>
        </form>
    </div>
</div>

mon controller :

Posté il y a 1 an
Avatar de delacoche28
delacoche28

mopn controller :

Posté il y a 1 an

Vous ne pouvez pas répondre à ce sujet.