Laravel 5图像在编辑后丢失

时间:2018-07-26 02:37:58

标签: php

我尝试使用更新功能更改照片。但是当我单击“提交”后,照片丢失了,有人可以帮忙吗?

这是控制者

public function update(Request $request, $id)
{
    $this -> validate($request, [
        'name' => 'required',
        'image' => 'required',
        'address' => 'required',
        'code' => 'required',
        'region' => 'required',
        'city' => 'required',
        'country' => 'required',
        'number' => 'required',
        'email' => 'required',
        'c_title' => 'required',
        'c_name' => 'required',
        'fax' => 'required'
    ]);


    $id = $request -> name;

    $update = Supplier::findOrFail($request -> id_supplier);
    $data = Supplier::find($request -> id_supplier);
    if($request->hasFile('image'))
    {
        Storage::delete($data->image);
        $image = Storage::putFile('public/',$request->image);
    }

    $update -> update($request-> all());
    $data -> image=$image;

    Session::flash('u_success','Supplier ' . $id . ' Has Been Updated.');

    return back();
}

它没有显示任何错误,但是图像没有显示

编辑前

the image showed here

之后

The Image Was lose

1 个答案:

答案 0 :(得分:0)

请参阅下面的更新代码。

public function update(Request $request, $id)
{
    $this -> validate($request, [
        'name' => 'required',
        'image' => 'required',
        'address' => 'required',
        'code' => 'required',
        'region' => 'required',
        'city' => 'required',
        'country' => 'required',
        'number' => 'required',
        'email' => 'required',
        'c_title' => 'required',
        'c_name' => 'required',
        'fax' => 'required'
    ]);


    $id = $request -> name;

    $update = Supplier::findOrFail($request -> id_supplier);

    if($request->hasFile('image'))
    {
        Storage::delete($update->image);
        $image = Storage::putFile('public/',$request->image);
        $update->image = $image;
    }

    $update -> update($request-> all());

    Session::flash('u_success','Supplier ' . $id . ' Has Been Updated.');

    return back();
}