Laravel通过Cloudder和Cloudinary在更新方法中上传图像,并带有getRealPath()错误"Call to a member function getRealPath() on



问题是我也在创建产品中使用Cloudder,完成。但是,在编辑中,错误是"在 null 上调用成员函数 getRealPath((">

这是控制器更新((方法

Cloudder::upload($request->file('images')->getRealPath(), $current_time);
$product->images = Cloudder::getResult()['url'];
$product->sale = $request->input('sale');
$product->description = $request->input('description');
$product->detail = $request->input('detail');
$product->save();
return redirect('/admin/product');

这是视图,输入文件上传图像

<div class="row">
<label class="col-sm-2 label-on-left" for="inputSuccess">Upload image</label>
<div class="form-group">
<div class="row ml-1">
<div class="col-sm-2">
<input type="file" name="images" class="mr-2" accept="image/*" onchange="readURL(this);">
<span class="badge badge-green">Choose new image...</span>
<img id="upload-image" src="#" alt="new image here" />
</div>
<div class="col-sm-2">
<span class="badge badge-green">Previous Image</span>
<img src="{{ $product->images }}" class="img-thumbnail" style="width: 150px; height: 150px;"/>
</div>
@if($errors->has('images'))
<label class="text-danger">*{{$errors->first('images')}}</label>
@endif
</div>
</div>
</div>

您可以使用getPathname它是由 laravelUploadedFile类扩展的SplFileInfo方法

Cloudder::upload($request->file('images')->getPathname(), $current_time);

最新更新