Pourquoi dois-je exécuter “compositeur de vidage-chargement automatique de la commande” pour faire des migrations de travail dans laravel?
J'ai construit des classes de migration dans mon application pour créer les tables dont j'ai besoin, mais je continue à recevoir des erreurs. J'ai besoin d'exécuter cette commande:
composer dump-autoload
Alors seulement, il fonctionne à nouveau comme prévu. Suis-je en train de faire quelque chose de mal qui génère cette erreur, ou est-ce un comportement normal avec les migrations?
Ci-dessous est l'erreur que je reçois lorsque vous exécutez le processus de migration:
[Symfony\Component\Debug\Exception\FatalErrorException]
Class 'CreateVideoStatusTable' not found
- êtes-vous à l'aide de phpartisan pour les migrations?
- oui je l'utilise pour générer la table créer et exécuter la migration
- avez-vous de l'utilisation d'Éclairer\Database\Schema\Plan; utiliser Éclairer\Database\Migrations\Migration; à l'intérieur de votre fichier et sont l'extension de la classe de Migration?
- oui , à l'aide de "l'utilisation Éclairer\Database\Schema\Blueprint" et "Éclairer\Database\Migrations\Migration".
- En général, lorsque je crée des fichiers de migration, qu'ils ressemblent à ce en partage de code.io/3iRxd jetez un oeil et voir si le vôtre suit une tendance similaire, si vous ne l'êtes pas, vous devez vous assurer que vous êtes en étendant la classe de Migration. n'est tout ok?
- exactement de la même
- cadre ne peut pas gérer de supprimer le fichier , de compositeur, mais l'ide peut gérer cela , vous pouvez lire autoload (PSR-0 & PSR-4) afin de mieux comprendre ce problème
Vous devez vous connecter pour publier un commentaire.
OK, donc je pense que je sais que le problème que vous rencontrez.
Fondamentalement, parce que le Compositeur ne peut pas voir la migration des fichiers que vous créez, vous êtes d'avoir à exécuter la benne de chargement automatique de commande qui ne sera pas télécharger quoi que ce soit de nouveau, mais semble pour toutes les classes il doit inclure à la fois. Il a juste régénère la liste de toutes les classes qui doivent être inclus dans le projet (autoload_classmap.php), et c'est pourquoi votre migration de travail après l'exécution de cette commande.
Comment résoudre le problème (peut-être)
Vous avez besoin d'ajouter des informations supplémentaires à votre compositeur.fichier json.
Vous devez ajouter le chemin d'accès à votre migrations dossier à la classmap tableau. Ensuite, exécutez les trois commandes suivantes...
Cela permettra d'eliminer les fichiers compilés, mettre à jour les classes dont il a besoin et puis les écrire, de retour de sorte que vous n'avez pas à le faire à nouveau.
Idéalement, vous exécutez compositeur benne de chargement automatique -o , pour un chargement plus rapide de vos pages web. La seule raison pour laquelle il n'est pas par défaut, c'est parce qu'il prend un peu plus de temps à générer (mais n'est que peu perceptible).
Espère que vous pouvez gérer pour obtenir cette triés, comme son très ennuyeux en effet 🙁
Vous devez exécuter:
et si ne fonctionne pas, vous devez: