我想在数据库 table 中添加图像名称,而不是图像的整个路径,我想使用 Factory 和 Seeds

I want to add in database table just name of image, NOT a whole path of image and I want to do with Factory and Seeds

我需要在数据库中创建 5 条记录。我有名称、价格和路径列。我想为数据库中的列路径添加图像,它应该包含图像名称而不是整个路径,只使用来自 Laravel 的工厂和种子。

 //PostFactory.php

 use App\Post;
 use Faker\Generator as Faker;

 $factory->define(Post::class, function (Faker $faker) {
 $filePath = public_path('images');



 return [
    'name' => $faker->name,
    'price' => $faker->numberBetween($min = 100, $max = 900),
    'path' => $faker->image($filePath,400,300),


        ];
 });

 //PostTableSeeder.php     

 use Illuminate\Database\Seeder;

 class PostTableSeeder extends Seeder
 {
   public function run()
  {
   factory(App\Post::class, 5)->create();
   }
 }

我希望只添加图像的名称,而不是我在数据库中只有整个路径。

根据Faker documentation,方法的签名是:

image($dir = null, $width = 640, $height = 480, $category = null, $fullPath = true, $randomize = true, $word = null)

对于您的情况,您可以使用 'path' => $faker->image($filePath,400,300,null,false) 来仅获取文件名。