我正在尝试使用laravel将数据播种到数据库中。
这是我的工厂型号
$factory->define(App\product::class, function (Faker\Generator $faker) {
return [
'name' => $faker->name,
'description' => $faker->description,
'price' =>$faker->price,
'image' => $faker->image,
'value' => $faker->value,
'category_id' => $faker->category_id,
'is_voucher' => $faker->is_voucher,
'voucher_id' => $faker->voucher_id,
];
});
producttableseed中的
public function run()
{
$product = factory(product::class, 10)->create();}
当我运行php artisan db:seed时 我收到此错误
Symfony \ Component \ Debug \ Exception \ FatalThrowableError:传递给Illuminate \ Database \ Eloquent \ Factory :: {closure}()的参数1必须是Faker \ Generator \ Generator的实例,是给定的Faker \ Generator的实例>
答案 0 :(得分:0)
你有线吗
use Faker\Generator as Faker;
在定义工厂之前?这,加上将第一行更改为此
$factory->define(App\product::class, function (Faker $faker) {
为我工作。
另外,请注意
$product = factory(product::class, 10)->create();}
您要在此处播种10个数据库条目。您的变量名是单数,当您尝试使用具有多个条目的数组时,您可能会感到惊讶。