Autour de Laravel

Illuminate\Contracts\Container\BindingResolutionException Target class [App\http\Controllers\MailController] does not exist.

Avatar de LoïcYOLA
LoïcYOLA

Bonjour, Après avoir mis mon site en production, j’ai cette erreur lors de l’envoi de l’email. Mais l’envoi de l’email fonctionne correctement en Local. J’ai effectué toutes les vérifications possibles, mais je ne trouve pas le problème. Je vous partage mes routes.

/* Dans ma route j'ai utilisé cette methode */
use App\http\Controllers\MailController;

/* ------------------------------------------- */


Route::group(['prefix' => 'locations'], function(){
                                    ...
    Route::get('search', [LocationController::class, 'search'])->name=('search');
    
    Route::post('MailLocation/{id}', [MailController::class, 'MailLocation']);
    
    Route::post('add-visit/{id}', [CodeVisitController::class, 'add_visit']);
                                    ...
    
});


Pourquoi cette erreur ? je comprends absolument rien.

Posté il y a 1 mois
Avatar de bestmomo
bestmomo

Salut,

Recrée les autoloads avec la commande composer dumpautoload.

Posté il y a 1 mois
Avatar de khalyomede
khalyomede

Bonjour, Windows n'est pas case sensitive sur les namespaces, alors que Linux si. Tu as un "h" minuscule dans "...http/Controllers". Je suppose, comme c'est le cas dans la majorité des hebergeurs Web, que ton serveur est sous Linux. Passe le "h" en majuscule, redeploie ton code et effectue la commande citée sur la réponse au dessus.

En espérant que ça aide !

Posté il y a 1 mois

Vous ne pouvez pas répondre à ce sujet.