加载当前图像以在编辑表单中更新(在 Laravel 5.5 中使用表单绑定)

Load Current Image to Update in Edit Form (Using Form Binding in Laravel 5.5)

我正在尝试在编辑表单中加载用户当前图像(图像 URL 保存在数据库中)... 如果未选择编辑表单中的新图像,我会收到此错误...

未定义变量:image_path

这是我的更新函数

 public function update(Request $request,User $user)
    {
        $get_user = Auth::user();
        if(Input::hasFile('image'))
        {
            $user_email = $get_user->email;
            $image = request()->file('image');
            $image_extension = $image->guessClientExtension();
            $image_path = $image->storePubliclyAs('public/uploads/profile_images/images', $user_email . ".{$image_extension}");

        }

        $user->firstname = $request->get('firstname');
        $user->lastname = $request->get('lastname');
        $user->company= $request->get('company');
        $user->address= $request->get('address');
        $user->phone = $request->get('phone');
        $user->country=  $request->get('country');
        $user->zipcode = $request->get('zipcode');
        $user->city = $request->get('city');
        $user->state = $request->get('state');
        $user->skills = $request->get('skills');
        $user->interests = $request->get('interests');
        $user->about = $request->get('about');
        $user->website = $request->get('website');
        $user->image_url = $image_path;
        $user->save();

        $request->session()->flash('message.level', 'success');
        $request->session()->flash('message.content', 'Profile Updated Successfully !');
        return redirect()->route('dashboard');

    }

这是我在编辑表单中的图像字段..

{{ Form::label('image_url', 'Profile Image') }}
{{ Form::file('image' ,null, ['class' => 'form-control','id'=>'image_url']) }}

如果用户没有在编辑表单中选择图像,请帮助并给我一个处理场景的解决方案..

如果块 if(Input::hasFile('image')),您可以将 $user->image_url = $image_path; 移动到内部。错误将 return 因为在编辑中您没有选择图像,所以如果块内部代码不起作用,那么 $image_path 将是未定义的

public function update(Request $request,User $user)
    {
        $get_user = Auth::user();
        if(Input::hasFile('image'))
        {
            $user_email = $get_user->email;
            $image = request()->file('image');
            $image_extension = $image->guessClientExtension();
            $image_path = $image->storePubliclyAs('public/uploads/profile_images/images', $user_email . ".{$image_extension}");
            $user->image_url = $image_path;
        }

        $user->firstname = $request->get('firstname');
        $user->lastname = $request->get('lastname');
        $user->company= $request->get('company');
        $user->address= $request->get('address');
        $user->phone = $request->get('phone');
        $user->country=  $request->get('country');
        $user->zipcode = $request->get('zipcode');
        $user->city = $request->get('city');
        $user->state = $request->get('state');
        $user->skills = $request->get('skills');
        $user->interests = $request->get('interests');
        $user->about = $request->get('about');
        $user->website = $request->get('website');

        $user->save();

        $request->session()->flash('message.level', 'success');
        $request->session()->flash('message.content', 'Profile Updated Successfully !');
        return redirect()->route('dashboard');

    }