Laravel semeur donne une erreur. Classe non trouvée
Je suis un newbie dans Laravel et et j'apprends comment authentifier à partir d'une table login. J'ai migré et la création de la table. Maintenant, je suis en train de semences les données dans la table login, mais l'invite de commande est continuellement me donner l'erreur, qui dit Fatal Error, class login not found
et je n'ai aucune idée de ce que j'ai manqué. Si quelqu'un peut s'il vous plaît aider moi. Voici le code que j'ai, et oui, je suis en utilisant Laravel 4.3
<?php
class loginTableSeeder extends Seeder
{
public function run()
{
DB::table('login')->delete();
login::create(array(
'username' => 'sanju',
'password' => Hash::make('sanju')
));
}
}
?>
source d'informationauteur samhu kiklsk
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin pour créer un Éloquent modèle pour ce tableau afin d'utiliser
Login::create()
. Vous pouvez le faire avec un simple artisan de commande:$ php artisan generate:model Login
Cela va générer une nouvelle Éloquent modèle dans
app/models
répertoire qui devrait ressembler à ceci.Votre code devrait fonctionner après que. Si cela ne fonctionne toujours pas, assurez-vous d'exécuter
composer dump-autoload
.MODIFIER
Maintenant je vois, le problème est avec votre
login
classe (avec la question précédente mise en forme de l'erreur exacte est illisible). Vous devriez regarder à nouveau quel est le nom de fichier où vous avezlogin
classe et quel est le nom de la classe. La convention est que le fichier doit avoir un nomLogin.php
(avec majuscule) et le nom de la classe doit aussi êtreLogin
(avec majuscule). Vous devriez également vérifier dans quel espace de noms est votreLogin
classe. Si elle est définie dansApp
espace de noms, vous devez l'ajouter à votreLoginTableSeeder
:dans la ligne suivante après
<?php
donc en gros le début de votre fichier devrait ressembler à ceci:
AUPARAVANT RÉPONDRE
Vous n'avez pas expliqué ce qu'est l'erreur exacte est (probablement l'erreur est pour
Seeder
classe), mais:Dans
database/seeds/DatabaseSeeder.php
vous devez exécuter Connexion semoir comme ceci:Vous devriez mettre en
database/seeds
fichierLoginTableSeeder.php
avec majuscule au début de la.Maintenant, votre fichier
LoginTableSeeder.php
fichier devrait ressembler à ceci:vous avez besoin d'importer
Seeder
avecuse
au début du fichier et le nouveau nom de la classe doit commencer avec une lettre majuscule.Maintenant, vous devez exécuter
composer dump-autoload
et maintenant, lorsque vous exécutezphp artisan db:seed
cela fonctionnera très bien.Il suffit d'exécuter
composer dump-autoload -o
pour l'autochargeur de ramasser les classes nouvellement parce que le dossier de base de données n'est pas automatiquement chargé avec le PSR-4.
Cela a fonctionné pour moi
J'ai le même problème, mais vous pouvez le résoudre en ajoutant votre espace de noms:
J'ai eu le même problème. Dans mon cas, le compositeur était très vieux et après elle est mise à jour tout fonctionne Ok.
Mise à jour de compositeur avec la commande:
$ compositeur auto-mise à jour
Espère que cela peut aider d'autres personnes.