首页 > 解决方案 > 如何使用 Laravel 和基本 URL 将图像存储在数据库中

问题描述

当我将图像存储到数据库中时,它不会使用基本 URL 上传。如何在 Laravel 中解决此类问题?

public function uploadimage(Request $request)
{
    if ($request->hasFile('image')) {
        $file = $request->file('image');
        $filename = $file->getClientOriginalName();
        $extension = $file->getClientOriginalExtension();
        $picture = date('His') . '-' . $filename;
        $file->move(public_path('img'), $picture);

        $employee_image = Image::create($request->all());
        $employee_image->image = $filename;
        $employee_image->save();

        return response()->json(['message' => 'Image Uploaded Successfully']);
    }

    return response()->json(['message' => 'Select image first.']);
}

标签: phplaravel-5.7intervention

解决方案


public_path() 函数不打算用于提供浏览器友好的 uri,因此,您应该改用\Illuminate\Support\Facades\URL外观。

例如:

$employee_image->image = URL::asset('storage/employees/').$filename;
$employee_image->save();

来源:Laravel.IO


推荐阅读