我如何在laravel中获得表的倒数第二个记录

时间:2018-08-28 14:42:47

标签: laravel record css-tables

我要从表中获取倒数第二条记录,并已经搜索到, 我尝试过:

$news2 = News::orderBy('created_at', 'desc')->skip(1)->take(1)->get();

但没有任何效果。

我收到此错误:

  

此集合实例上不存在属性[基准]。 (查看:C:\ xampp \ htdocs \ j4ylara \ resources \ views \ user \ start.blade.php)

如果我想要最后一个,一切都会很好地完成。

$news1 = News::all()->last();

我的看法是相同的

<div class="col-12 col-md-6 news">


    <div class="news-content">
                    <div class="date"><i class="far fa-calendar-alt"></i> {{ $news1->datum }}</div>
                    <h4 class="news-title">{{ $news1->newstitel }}</h4>
                    <p class="news-text">{{ $news1->newsbeschreibung }}</p>
                    <a href="#" class="btn btn-primary">
                        mehr lesen &raquo;
                    </a>
                </div>
            </div>
        </div>
        <div class="row no-gutters news-wrapper">
            <div class="col-12 col-md-6 news-image">
                <img class="img-fluid" src="https://picsum.photos/385/370/?random">
            </div>
            <div class="col-12 col-md-6 news">
                <div class="news-content">
                    <div class="date"><i class="far fa-calendar-alt"></i>{{ $news2->datum }}</div>
                    <h4 class="news-title">{{ $news2->newstitel }}</h4>
                    <p class="news-text">{{ $news2->newsbeschreibung }}</p>
                    <a href="#" class="btn btn-primary">
                        mehr lesen &raquo;
                    </a>
                </div>
            </div>
        </div>

5 个答案:

答案 0 :(得分:0)

您收到的错误是来自视图的,您可能正在调用对象的“基准”属性,并且其中一个不存在:

(View: C:\xampp\htdocs\j4ylara\resources\views\user\start.blade.php)

查询对我来说很好

答案 1 :(得分:0)

尝试

$news2 = News::orderBy('created_at', 'desc')->skip(1)->take(1)->first();

如果您需要更多,则只返回一个result,您需要在foreach内使用blade

答案 2 :(得分:0)

尝试使用getModel()而不是get()来获取查询结果

答案 3 :(得分:0)

尝试一下:

$news2 = News::orderBy('created_at', 'desc')->offset(1)->take(1)->first();

get()返回新闻集。您必须使用first()

答案 4 :(得分:0)

我得到IIIIIIIIIIIT AHHHHHHHHHH:)

$row = News::count();
        $newsid = $row -2;
        $news1 = News::all()->last();
        $news2 = News::orderBy('created_at', 'desc')->skip($newsid)->take($newsid)->first();
        return view('user/start', compact('news1', 'news2', 'newsid'));