图像在我的数据库中持久存在但未在前端显示

时间:2017-11-08 14:15:29

标签: php database laravel laravel-5 laravel-eloquent

我正在与Laravel 5.2合作开展一个项目。我需要创建,编辑和显示用户配置文件。用户配置文件应具有上载的用户图像。以下是我的控制器的代码段。这是为了保留用户照片,将其放在称为图像的文件中。这些照片在数据库中仍然存在,它不会丢失在图像文件夹中,也不会显示在前端。

public function store(UserRequest $request)
{
    /*   User::create($request->all());
       */

    $input=$request->all();
    $input['password']=bcrypt($request->password);

    if ($file=$request->file('photo_id')){

        $name= time() . $file->getClientOriginalName();
        $file->move('images',$name);
        $photo=Photo::create(['file'=>$name]);
        $input['photo_id']=$photo->id;


    }

    User::create($input);
    return redirect('admin/users');

}

这也是我显示图像的前端表。

 <tr>

       <td><a href="{{route('admin.users.edit', $user->id)}}">{{$user->name}}</a></td>
       <td>{{$user->email}}</td>
       <td><img height='50' src="/images/{{ isset($user->photo)?$user->photo['file']:"has no photo"}}" alt=""></td>
       <td>{{$user->is_active = 1 ? 'Active':'Non-Active' }}</td>
       <td>{{$user->role['name'] }}</td>
       <td>{{$user->created_at->diffForHumans()}}</td>
       <td>{{$user->updated_at->diffForHumans()}}</td>
                            </tr>

我需要将图像放入图像文件夹中,保留在数据库中并显示在前端。有人请吗?

1 个答案:

答案 0 :(得分:1)

更改此行

<td><img height='50' src="/images/{{ isset($user->photo)?$user->photo['file']:"has no photo"}}" alt=""></td>

并使用

<td><img height='50' src="{{ url('images/' . \App\Photo::find($user->photo_id)->file) }}" alt=""></td>
//Include valid Photo.php location that you create. I just use demo...