2017-12-04 2 views
1

Ich habe ein Geschäftsmodell mit artisan make:model command, eine Modellfabrik und eine Seed-Methode erstellt. Beim Ausführen meiner Seed-Methode erhalte ich den folgenden Fehler:Warum kann meine Laravel-Fabrik mein Modell nicht finden?

Kann mir jemand sagen, was ich falsch mache?

Geschäftsmodell:

namespace App; 
use Illuminate\Database\Eloquent\Model; 

class Business extends Model 
{ 
    /** 
    * The attributes that are mass assignable. 
    * 
    * @var array 
    */ 
    protected $fillable = [ 
     'name' 
    ]; 

    public function resources() 
    { 
     return $this->hasMany('App\Resource'); 
    } 

} 

Geschäft Fabrik

use Faker\Generator as Faker; 

$factory->define(Business::class, function (Faker $faker) { 
    return [ 
     'name' => $faker->company, 
    ]; 
}); 

Seeder Methode

$business = factory(App\Business::class, 50) 
        ->create() 
        ->each(function ($u) { 
         $u->resources()->save(factory(App\Resource::class)->make()); 
        }); 
+0

In Ihrer "Business Factory" fügen Sie 'app \ Business;' nach der 'faker \ Generator als Faker;' Zeile hinzu. – ceejayoz

Antwort

0

Bitte, versuchen Sie, composer dump-autoload

Manchmal hilft es in solchen Situationen.

Und stellen Sie sicher, dass, wenn Sie solche Fabrik deklarieren: $factory->define(Business::class,... Ihre Business-Klasse wird korrekt importiert, oder erwägen, es zu App\Business zu ändern.

+0

Ich habe 'Composer Dump-Autoload' versucht und habe immer noch Probleme. Ich habe auch das Modell importiert mit 'use Business;' – Imran

+0

@Imran versuchen 'app \ Business' verwenden – Alagunto

+0

Auch versucht, diese – Imran

Verwandte Themen