解决 [Symfony\Component\Debug\Exception\FatalErrorException] Class 'XXXXXX' no

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决 [Symfony\Component\Debug\Exception\FatalErrorException] Class 'XXXXXX' no相关的知识,希望对你有一定的参考价值。

参考技术A 在我们使用命令

创建class之后,可以正常执行

语句构建,但是,如果我们执行

之后将会报错

此时如果我们全局配置 composer

即可
如果是局部则执行

之后再次rollback将会正常回滚

Symfony\Component\Debug\Exception\FatalThrowableError

【中文标题】Symfony\\Component\\Debug\\Exception\\FatalThrowableError【英文标题】:Symfony\Component\Debug\Exception\FatalThrowableErrorSymfony\Component\Debug\Exception\FatalThrowableError 【发布时间】:2019-08-02 16:53:05 【问题描述】:

我正在尝试使用 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 实例

【问题讨论】:

【参考方案1】:

你有电话吗

use Faker\Generator as Faker;

在你定义你的工厂之前?这个,加上把第一行改成这个

$factory->define(App\product::class, function (Faker $faker) 

为我工作。

另外,要小心

$product = factory(product::class, 10)->create();

您在此处播种 10 个数据库条目。您的变量名称是单数,当您尝试使用具有多个条目的数组时,您可能会感到惊讶。

【讨论】:

以上是关于解决 [Symfony\Component\Debug\Exception\FatalErrorException] Class 'XXXXXX' no的主要内容,如果未能解决你的问题,请参考以下文章

Symfony Mercure 错误 Symfony\Component\Mercure\PublisherInterface

Symfony 2 无法解决 Construct

异常:“Symfony\Component\HttpKernel\Exception\NotFoundHttpException”,...

Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException。原因是啥?

Symfony\Component\HttpKernel\Exception\NotFoundHttpException

Laravel“Symfony\Component\HttpKernel\Exception\HttpException”错误