Laravel 5.6如何在一篇文章中显示少量图片

时间:2018-06-20 11:14:39

标签: laravel object laravel-blade

下午好,

我正在博客上,其中有文章的详细信息,并且希望显示少量图片。

我现在得到的是:

如您所见,我正在获取内容,并且在获取内容图片之后。这也是刀片的代码。

<div class="container">
      @foreach($articles as $article)
        <article>
          <h1 class="title is-1"><a href="{{route('show', $article->id)}}">{{$article->title}}</a></h1>
            @foreach($article->images as $image)
              <figure class="image is-128x128">
                <img src="{{$image->path}}" alt="{{$image->title}}">
              </figure>
            @endforeach
          <p>{{$article->content}}</p>
        </article>
      @endforeach
    </div>

因为我得到一个物体,所以无法分割图片。

2 个答案:

答案 0 :(得分:0)

  1. 确保 SELECT type FROM foo WHERE type IN (SELECT type FROM foo WHERE `reference_uid` = '180f28e3-6abd-45a8-b84c-410e908e62ed') WHERE type = "DELETE"; 对图像文件是正确的(如果它是URL,请跳过这一点)。 您可以通过回显它或仅通过dd($ image-> path)进行检查。

  2. 要访问的图像,它必须位于laravel的公用文件夹中

如果您希望将文件保存在存储文件夹中并进行公开访问,则需要创建符号链接

  

https://laravel.com/docs/5.6/filesystem

答案 1 :(得分:0)

很难弄清楚您想要什么,但是我很确定我终于得到了问题

您想做的事情是这样的:

<div class="container">
  @foreach($articles as $article)
    <article>
      <h1 class="title is-1"><a href="{{route('show', $article->id)}}">{{$article->title}}</a></h1>
      @if(count($article->images) > 0)
        <figure class="image is-128x128">
          <img src="{{$article->images->first()->path}}" alt="{{$article->images->first()->title}}">
        </figure>
      @endif
      <p>{{$article->content}}</p>
      @if(count($article->images) > 1)
        @foreach($article->images->slice(1) as $image)
          <figure class="image is-128x128">
            <img src="{{$image->path}}" alt="{{$image->title}}">
          </figure>
        @endforeach
      @endif
    </article>
  @endforeach
</div>

这不仅会为您提供标题>图片1>内容>剩余图片,而且还可以确保仅在实际可用时打印图像。第二个$article->images->slice(1)中的@if()将确保我们不再使用第二个图像。