首页 > 解决方案 > 带有消息的 InvalidArgumentException '无法找到名称为 [default] [App/Message] 的工厂。'

问题描述

我无法在我的数据库中播种消息。我尝试了几种解决方案,但都没有奏效。

Psy Shell v0.9.12 (PHP 7.1.29 — cli) by Justin Hileman
>>> factory(App\Message::class, 150)->create();
InvalidArgumentException with message 'Unable to locate factory with name [defau
lt] [App/Message].'

我正在使用 Laravel。

这是 UserFactory.php。

    /** @var \Illuminate\Database\Eloquent\Factory $factory */
    use App\User;
    use Illuminate\Support\Str;
    use Faker\Generator as Faker;



    $factory->define(User::class, function (Faker $faker) {
        return [
            'name' => $faker->name,
            'phone' => $faker->phoneNumber,
            'profile_image' =>'http://via.placeholder.com/150x150',
            'email' => $faker->unique()->safeEmail,
            'email_verified_at' => now(),
            'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
            'remember_token' => Str::random(10),
        ];
    });

    $factory->define(Message::class, function (Faker $faker) {
      do{
        $from = rand(1, 15);
        $to = rand(1, 15);
      } while ($from == $to);


        return [
            'from' => $from,
            'to' => $to,
            'text' => $faker->sentence,

        ];
    });

我也尝试过使用: $factory->define(Message::class, function (Faker\Generator $faker) 仍然不起作用。

标签: phplaravel

解决方案


推荐阅读