Laravel take跳过查询未获取有效数据



我正在开发一个Laravel博客应用程序。

我试图使用查询生成器在数据库中获取文章,但它似乎对我不起作用

我想要的是跳过前3篇最新文章,只显示下2篇文章(第4篇和第5篇(

这是我的功能:

public function getIndex() {
$posts = Post::orderBy('created_at', 'desc')->skip(3)->take(2)->get();
return view('pages.home')->with(['posts' => $posts]);
}

我的刀片视图结构如下:

<div class="col-lg-4 top-post-right">
@foreach ($posts as $post)
<div class="single-top-post">
<div class="feature-image-thumb relative">
<div class="overlay overlay-bg"></div>
<img class="img-fluid" src="/storage/{{$post->image}}" alt="">
</div>
<div class="top-post-details">
<ul class="tags">
<li><a href="#">{{ $post->category->name }}</a></li>
</ul>
<a href="{{ url('article/'.$post->slug) }}">
<h4>{{ $post->title }}</h4>
</a>
<ul class="meta">
<li><a href="#"><span class="lnr lnr-user"></span>Mark wiens</a></li>
<li><a href="#"><span class="lnr lnr-calendar-full"></span>{{date('j M, Y',strtotime($post->created_at))}}</a></li>
<li><a href="#"><span class="lnr lnr-bubble"></span>{{ $post->comments()->count() }} Comments</a></li>
</ul>
</div>
</div>                    
@endforeach
</div>

这是打印所有的文章,有人知道我把哪里搞砸了吗?

正如我所尝试的那样,这实际上对我有效:

$posts=Post::orderBy('created_at','desc'(->skip(3(->take(2(->get((;

1.(你看错刀刃锉了?或

2.(肯定是缓存问题,请重新启动服务器。

最新更新