2017-04-21 3 views
1

Ich habe begonnen Laravel 5.4 zu lernen. Um meine Datenbank zu füllen, vervollständige ich BreedsTableSeeder.php Datei.'php artisan db: samen' funktioniert nicht in Laravel5.4

enter code here 
class BreedsTableSeeder extends Seeder { 
    public function run() { 
     DB::table('breeds')->insert([ 
      ['id' => 1, 'name' => "Domestic"], 
      ['id' => 2, 'name' => "Persian"], 
      ['id' => 3, 'name' => "Siamese"], 
      ['id' => 4, 'name' => "Abyssinian"], 
     ]); 
    } 
} 

Dann schließe ich DatabaseSeeder.php.

enter code here 
<?php 
    use Illuminate\Database\Seeder; 

    class DatabaseSeeder extends Seeder { 
     public function run() { 
      $this->call(BreedsTableSeeder::class); 
     } 
    } 
?> 

Dann seed ich die Datenbank durch den Aufruf, mit dem folgenden Befehl.

$ php Handwerkers db: Samen

aber Fehler tritt als

* folgt [Reflection] Klasse BreedsTableSeeder nicht existiert *

Wenn ich ,

php Handwerkers db: Samen --Klasse = "BreedsTableSeeder"

das Ergebnis ist das gleiche.

Wenn ich,

Verwendung Illuminate \ Database \ Eloquent \ Modell; auf DatabaseSeeder.php Datei

wird automatisch gelöscht.

+0

können Sie den gesamten Code Ihres Seeder posten? Ich gehe davon aus Sie nur den richtigen Namensraum fehlt oder Anweisungen an den Anfang verwenden.' Verwenden Illuminate \ Database \ Seeder; ' – Christophvh

Antwort

0

Sie benötigen

composer dumpautoload 

tun, wenn Sie neue Klassen erstellen

EDIT

Fehler wie dies geschieht. „Klasse‚Seeder‘nicht

gefunden

Ihr Seeder fehlt

use Illuminate\Database\Seeder; 
+0

Danke. Würdest du im Detail erklären? – dieter

+0

Ich habe mit $ composer dumpautoload getan, und seed die Datenbank erneut. $ Php artisan db: samen. Fehler tritt auf diese Weise." Klasse 'Seeder' nicht gefunden " – dieter

+0

Sie wahrscheinlich am häufigsten fehlt '' verwenden '. Siehe Beispiel: https://laravel.com/docs/5.4/seeding/writing-seeders –

Verwandte Themen