我想做 php artisan db:seed,然后我得到这个错误“ErrorException array_merge(): 预期参数 2 是一个数组,给定的整数”

问题描述

我想使用 Youtube 上的此源视频制作 API 身份验证 Laravel Passport - 忘记并重置密码:https://www.youtube.com/watch?v=F9Xmc3iHc88&t=6s

我的源 Youtube 使用 Laravel 6x,我使用 Laravel 8x

当我在分钟视频 8:17 中执行步骤“播种和工厂数据库”时,我得到了

ErrorException array_merge(): 预期参数 2 是一个数组,给定的 int

This is my error cmd

这是我的 UserFactory.php :

<?php 
namespace Database\Factories;

use Illuminate\Database\Eloquent\Factories\Factory;
use App\Models\User;

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

 /**
 * Define the model's default state.
 *
 * @return array
 */
 public function definition()
 {
    return [
        'first_name' => $this->faker->firstName,'last_name' => $this->faker->lastName,'email' => $this->faker->unique()->safeEmail,'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi',// password
    ];
}

}

这是我的 UsersTableSeeder.php :

<?php

namespace Database\Seeders;

use Illuminate\Database\Seeder;
use App\Models\User;

class UsersTableSeeder extends Seeder
{
 /**
 * Run the database seeds.
 *
 * @return void
 */
 public function run()
 {
    User::factory(App\Models\User::class,10)->create();
 }
}

和我的 DatabaseSeeder.php :

<?php

namespace Database\Seeders;

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder

{
 /**
 * Seed the application's database.
 *
 * @return void
 */
 public function run()
 {
    $this->call(UsersTableSeeder::class);
 }
}

谁能帮我解释一下为什么我得到这个错误合并数组?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)