Php 未定义的方法数据库\Factories\Laravel 8

Php 未定义的方法数据库\Factories\Laravel 8,php,laravel,factory,laravel-8,Php,Laravel,Factory,Laravel 8,我对工厂和种子的怀疑。 我试着用种子进行迁移,我发现了以下问题调用未定义的方法数据库\Factorys\PostFactory::faker() 我不太清楚在哪里打电话,如果是在一个单独的文件中,比如PostSeeds,或者我是如何在这里打电话的 这是主文件DatabaseSeeder.php 请验证您在Post模型中是否具有使用HasFactory特性,并且当您使用laravel 8时,请将Postfactory.php中的url\u图像替换为以下内容: 'url_image' =>

我对工厂和种子的怀疑。 我试着用种子进行迁移,我发现了以下问题<代码>调用未定义的方法数据库\Factorys\PostFactory::faker()

我不太清楚在哪里打电话,如果是在一个单独的文件中,比如PostSeeds,或者我是如何在这里打电话的

这是主文件DatabaseSeeder.php


请验证您在Post模型中是否具有
使用HasFactory
特性,并且当您使用laravel 8时,请将Postfactory.php中的
url\u图像
替换为以下内容:

'url_image'  => $this->faker->image('public/storage/posts', 650, 490, null, false)

首先运行“composer dump autoload”并使用工厂功能,这样可能会起作用。“\App\Models\Post::factory(10)->create();”无规则。我有两种方法\App\Models\Post'::工厂(10)->create();`和“\App\Models\Post::factory(10)->create();”我以前执行过命令
composer dump autoload
。是,已验证
class Post扩展模型{use HasFactory;
用以下内容替换Postfactory.php中的
url\u image
key=>值:
'url\u image'=>$this->faker->image('public/storage/posts',650,490,null,false)
“无法写入目录”public/storage/posts“我们必须创建文件夹才能解决它?并且没有将在public中。很明显,这是问题所在。创建文件夹无法解决什么问题。我只是对它进行了评论,并将在
DatabaseSeeder
中放置一个默认图像,替换行
Storage::makeDirectory('posts');
为`$folder=public\u路径。”('/storage/posts');如果(!File::exists($folder)){File::makeDirectory($folder,0755,true,true);}`并在
UserFactory
中用
'url\u image'=>this->faker->image(公共路径('/storage/posts'),650,490,null,false)替换