我想添加数据库表只有图像的名称,而不是图像的整个路径,我想与工厂和种子一起使用



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

 //PostFactory.php
 use AppPost;
 use FakerGenerator 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 IlluminateDatabaseSeeder;
 class PostTableSeeder extends Seeder
 {
   public function run()
  {
   factory(AppPost::class, 5)->create();
   }
 }

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

根据Faker文档,该方法的签名是:

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

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

最新更新