【发布时间】:2018-11-08 19:51:36
【问题描述】:
当我使用 php工匠数据库:种子 我得到了错误? 在 UserFactory.php 第 27 行:
Type error: Argument 1 passed to
Illuminate\Database\Eloquent\Factory::{closure}() must be an instance
of Faker\Generator\Generator, instance of Faker\Generator given
Userfactory.php
使用 Faker\Generator 作为 Faker;
(这是第 27 行)
$factory->define(App\Models\Admin::class, function (Faker\Generator $faker) {
static $password;
return [
'name' => $faker->name,
'email' => $faker->safeEmail,
'password' => $password ?: $password = bcrypt('secret'),
'remember_token' => str_random(10),
];
});
AdminsTableSeeder.php
public function run()
{
factory('App\Models\Admin',3)->create([
'password' => bcrypt('123456')
]);
}
DatabaseSeeder.php
public function run()
{
// $this->call(UsersTableSeeder::class);
$this->call(AdminsTableSeeder::class);
}
我不知道它是怎么发生的。
【问题讨论】:
-
应该是这样 $factory->define(App\Admin::class, function (Faker\Generator $faker) { static $password; return [ 'name' => $faker-> name, 'email' => $faker->safeEmail, 'password' => $password ?: $password = bcrypt('secret'), 'remember_token' => str_random(10), ]; });
-
重新加载您的修补程序并重试。
-
@SachinAghera 我不知道你是什么意思?区别是什么?
-
@AnowarHossain 我不使用修补程序,如何重新加载它?我试试重启电脑还是一样的错误?
标签: laravel factory laravel-seeding