Проблема с классом ‘Database Seeders не найдена

#php #database #class #lumen

#php #База данных #класс #просвет

Вопрос:

недавно я начал практиковать laravel / lumen. Все было хорошо, но теперь я столкнулся с проблемой, когда собираюсь попробовать команду: php artisan db: seed Он показывает мне ошибку: класс ‘Database Seeders lumenPractice’ не найден

я также пробовал: php artisan migrate:fresh —seed он также не работает и показывает мне ту же ошибку. я использую php версии 7.4.11 enter code here

мой LumenPractice.php код приведен ниже:

 <?php

namespace AppModels;

use IlluminateAuthAuthenticatable;
use IlluminateContractsAuthAccessAuthorizable as AuthorizableContract;
use IlluminateContractsAuthAuthenticatable as AuthenticatableContract;
use IlluminateDatabaseEloquentFactoriesHasFactory;
use IlluminateDatabaseEloquentModel;
use LaravelLumenAuthAuthorizable;

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

Мой DatabaseSeeder.php код приведен ниже:

 <?php

namespace DatabaseSeeders;

use IlluminateDatabaseSeeder;

class DatabaseSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        
        //factory(lumenPractice::class(), 50)->create();
         lumenPractice::factory(count(30))->create();
        // $this->call('UsersTableSeeder');
    }
}
 

Мой UserFactory.php код приведен ниже:

 <?php

namespace DatabaseFactories;

use AppModelsLumenPractice;
use IlluminateDatabaseEloquentFactoriesFactory;

class UserFactory extends Factory
{
    /**
     * The name of the factory's corresponding model.
     *
     * @var string
     */
    protected $model = LumenPractice::class;

    /**
     * Define the model's default state.
     *
     * @return array
     */
    public function definition()
    {
        return [
            'gender' =>$gender = $this->faker->randomElement(['male''female'])
            'name' => $this->faker->name($gender),
            'country' => $this->faker->country,
        ];
    }

    
}
 

Ответ №1:

Вы пробовали использовать заглавную букву «l» в lumenPractice::factory(count(30))->create(); ? Я полагаю, вы хотели написать LumenPractice::factory(count(30))->create(); . Все остальное кажется нормальным.