Erreur sur une action dans mon controller (Formulaire)

Par JMERISE, il y a 8 ans


Bonjour / Bonsoir,

Depuis quelle que semaine j'ai commancé à apprendre le framework Laravel.
J'ai créer un petit blog qui fonctionne trés bien mais j'ai juste une erreur sur une action qui me dit :

Action App\Http\Controllers\SearchController@search not defined

En effet comme le nom de mon controller l'indique je suis entrain de créer une page de recherche, j'ai créer un formulaire avec le Laravel Collective
Voici à quoi cela ressemble :

{!! Form::open(['action' => 'SearchController@search', 'method' => 'GET']) !!} {{ Form::hidden('_method', 'GET') }} <div class="form-group"> {{ Form::text('search', '', ['class' => 'form-control']) }} </div> <div class="form-group"> {{ Form::button('Rechercher', ['class' => 'btn btn-primary']) }} </div> {!! Form::close() !!}

L'action me renvoie vers m'a fonction search qui est dans le controller searchController :

/** * @param Request $request * @return \Illuminate\Http\RedirectResponse */ public function search(Request $request) { $requestSearch = $request->validate([ 'search' => 'required' ]); $search = $request->input('search'); $article = Article::search($search)->get(); return redirect('search')->with('article', $article); }

Je ne comprend pas pourquoi mon formulaire n'arrive pas a trouver SearchController@search

Merci d'avance pour tous ceux qui prendront le temps de m'aide.

3 réponses

JMERISE, il y a 8 ans

@Sirr K'kayn Merci d'avoir pris le temps d'avoir lue est publier une réponse, j'avais juste oublier de créer un deuxiéme route.

Sir Kane, il y a 8 ans

Bonjour / bonsoir,
est-ce qu'on peut voir la declaration de ton controler (le nasmespace et la nom de ton controler)
Je ne vois pas d'autres erreurs

JMERISE, il y a 8 ans

Bonsoir,

Je vient de résoudre mon problème, je le post ici ou cas ou si il y a d'autre personne dans le même cas, J'ai juste oublier de créer un deuxième route pour le post car au départ j'avais d'un route qui afficher uniquement la vue.

Route::get('/search', 'SearchController@index'); Route::get('/search/{s?}', 'SearchController@search');