Pourquoi suis-je une “classe non trouvée” erreur dans mon Laravel module?
Je suis à l'aide de "laravel/cadre": "4.2. *" version, et je veux utiliser le système de module pour mon projet. J'ai suivi les instructions fournies dans ce document.
Je peux créer des modules à l'aide de la commande: php artisan modules:create module_name
. J'ai créé un module admin dans mon répertoire app, et le répertoire du module structure a été créée.
Je suis en utilisant DB::select('some SQL statement')
dans l'une des actions du contrôleur du module admin, mais il me donne l'erreur suivante:
Classe 'App\Modules\Admin\Controllers\DB' introuvable.
Pourquoi il n'est pas en mesure de trouver cette classe?
use Illuminate\Support\Facades\DB;
OriginalL'auteur Alankar More | 2014-09-11
Vous devez vous connecter pour publier un commentaire.
Lors de l'utilisation de
DB
ou de tout autre Laravel façades en dehors de la racine de l'espace de noms, vous devez vous assurer que vous utilisez vraiment la classe dans l'espace de noms racine. Vous pouvez mettre un\
avant de la classe.Ou vous pouvez utiliser le
use
mot-clé dans votre fichier de classe afin de permettre l'utilisation de différents espaces de la classe, sans explicitement l'écriture de l'espace de noms à chaque fois que vous l'utilisez.Noter que le
use
mot-clé suppose toujours qu'il est le chargement d'un espace de noms de la racine de l'espace de noms. Par conséquent, un espace de noms complet est toujours nécessaire avecuse
.OriginalL'auteur David Barker
ou d'autre, vous pouvez utiliser autoload dans compositeur.json
OriginalL'auteur Ramesh