Can`t seed one table. Always get these error in MovieSeeder

Viewed 37
  1. This is MovieFactory:
namespace Database\Factories;
    
use App\Models\Category;
use Illuminate\Database\Eloquent\Factories\Factory;
use Xylis\FakerCinema\Provider\Movie;
use Bezhanov\Faker\Provider\Avatar;

/**
 * @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Movie>
 */
class MovieFactory extends Factory
{

    /**
     * The name of the factory`s corresponding model.
     *
     * @var string
     */
    protected $model = Movie::class;

    /**
     * Define the model's default state.
     *
     * @return array<string, mixed>
     */
    public function definition()
    {
        $this->faker->addProvider(new \Xylis\FakerCinema\Provider\Movie($this->faker));
        $this->faker->addProvider(new \Bezhanov\Faker\Provider\Avatar($this->faker));
        return [

            'name' => $this->faker->movie,
            'year' => $this->faker->Year(),
            'image' => $this->faker->imageUrl,
            'rating' => $this->faker->randomDigitNotNull(),
            'price' => $this->faker->randomDigitNotNull(),
            'issue_date' => NOW(),
            'category_id' => Category::inRandomOrder()->value('id'),
            'overview' => $this->faker->overview,
        ];
    }
}
  1. This is MovieSeeder:
namespace Database\Seeders;

use App\Models\Category;
use App\Models\Movie;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;


class MovieSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        Movie::factory()->times(10)->create();
    }
}
  1. And These error I`m getting:
Faker\Provider\Base::__construct(): Argument #1 ($generator) must be of type Faker\Generator, array given, called in /var/www/movie.loc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php on line 713
    
      at vendor/fakerphp/faker/src/Faker/Provider/Base.php:22
         18в–•      * @var \Faker\UniqueGenerator
         19в–•      */
         20в–•     protected $unique;
         21в–• 
      вћњ  22в–•     public function __construct(Generator $generator)
         23в–•     {
         24в–•         $this->generator = $generator;
         25в–•     }
         26в–• 
    
          +3 vendor frames 
      4   database/seeders/MovieSeeder.php:20
          Illuminate\Database\Eloquent\Factories\Factory::create()
    
          +8 vendor frames 
      13  database/seeders/DatabaseSeeder.php:22
          Illuminate\Database\Seeder::call()

0 Answers
Related