Laravel显示数据库中的图像

时间:2015-02-17 13:52:40

标签: php laravel

所以我想在我的视图中显示图像而不是图像名称。

我在观点中得到了这个

<img src="{{$post->image}}" />

我想要的是显示实际图像而不是图像的名称。我怎么能实现这个目标?我应该首先将图像保存在公用文件夹中吗?或者我的方法错了?请赐教吗?非常感谢。我试过这个方法

{{ HTML::image($post->image, '', array('class' => 'image')); }}

但我仍然得到相同的输出。

6 个答案:

答案 0 :(得分:2)

首先,您必须将图像存储在公共目录中(否则浏览器无法访问它们)

然后它取决于$post->image实际上是什么。如果它是相对于public的路径,则可以执行此操作:

<img src="{{ asset($post->image) }}" />

或者:

{{ HTML::image($post->image, '', array('class' => 'image')); }}

修改

由于您的图片存储在public/img中且image属性仅保存名称(不包含img/),因此您必须先添加:

<img src="{{ asset('img/' . $post->image) }}" />

答案 1 :(得分:0)

您可以像<img src="{{ asset('img')}}/{{ $post->image) }}" />

一样使用

您的图片目录是public / img / image&#39的名称

答案 2 :(得分:0)

该图像已保存到数据库,但是您不知道该图像保存到磁盘上的哪个文件夹,因此请查看您的控制器以查看其保存位置。

然后在刀片中可以使用:

<img src="/folder_name_path/{{$post ->image}}" />

答案 3 :(得分:0)

  1. 插入您的图片:

    public function store(Request $request)
     {
     $pages = new Appsetting();
    
            $pages->title = $request->input('title');
            $pages->description = $request->input('description');
    
            if ($request->hasfile('image')) {
                $file = $request->file('image');
                $extension = $file->getClientOriginalExtension(); // getting image extension
                $filename = time() . '.' . $extension;
                $file->move('uploads/appsetting/', $filename);
    
    //see above line.. path is set.(uploads/appsetting/..)->which goes to public->then create
    //a folder->upload and appsetting, and it wil store the images in your file.
    
                $pages->image = $filename;
            } else {
                return $request;
                $pages->image = '';
            }
           $pages->save();
    
           return redirect('pagesurl')->with('success', 'App Setting Added');
     }
    
  2. 按索引显示

     public function index()
        {
            $pages = Appsetting::all();
            return view('admin.appsettings.pages', compact('pages',$pages));
        }
    
  3. 进入Blade文件。 (pages.blade.php

    @foreach ($pages as $page)
    <td> <img src="{{ asset('uploads/appsetting/' . $page->image) }}" /> </td>
    @endforeach
    
  4. 设置路线并100%正常工作。

答案 4 :(得分:0)

如果您的图片位于public / images文件夹中,请在下面使用。否则,请使用该项目在public文件夹中该图片的路径。并与图片扩展名连接。

<img src="images/{{$post->image}}.jpg" alt={{$post->image}}/>

答案 5 :(得分:0)

style =“ url(background-image:images / bg.jpg) 在这种情况下如何获取图像