如何排除 Laravel 中的特定行?
How do I exclude a specific row in Laravel?
我正在尝试 return 我的数据库中的信息,但我想输出最新消息,与其他消息略有不同。
我通过以下代码成功获取了最新消息
$finalNews = News::find(DB::table('news')->max('id'));
但是我有另一个变量 return 来自 News
table 的所有行,代码如下
$news = News::orderBy('id','desc')->get();
我想排除等于 $finalNews
的新闻行
在控制器的末尾,我 return 查看以下数据
return view('news', ['news' => $news, 'finalNews' => $finalNews]);
如何排除最新消息?我正在使用 Laravel 和 MySQL.
尝试使用下面的代码
$finalNews = News::find(DB::table('news')->max('id'));
$news = News::where('id','<>',$finalNews->id)->orderBy('id','desc')->get();
从新闻列表中排除最新消息的Id
$finalNews = News::find(DB::table('news')->max('id'));
$latestId = $finalNews->id;
$news = News::where('id','!=',$latestId)
->orderBy('id','desc')
->get();
首先,获取所有新闻
$news = News::orderBy('id','desc')->get();
然后,从 $news
中弹出最后一项(最新消息)
$latest_news = $news->pop();
https://laravel.com/docs/5.5/collections#method-pop
在这种情况下不需要使用 2 个查询
我正在尝试 return 我的数据库中的信息,但我想输出最新消息,与其他消息略有不同。
我通过以下代码成功获取了最新消息
$finalNews = News::find(DB::table('news')->max('id'));
但是我有另一个变量 return 来自 News
table 的所有行,代码如下
$news = News::orderBy('id','desc')->get();
我想排除等于 $finalNews
的新闻行
在控制器的末尾,我 return 查看以下数据
return view('news', ['news' => $news, 'finalNews' => $finalNews]);
如何排除最新消息?我正在使用 Laravel 和 MySQL.
尝试使用下面的代码
$finalNews = News::find(DB::table('news')->max('id'));
$news = News::where('id','<>',$finalNews->id)->orderBy('id','desc')->get();
从新闻列表中排除最新消息的Id
$finalNews = News::find(DB::table('news')->max('id'));
$latestId = $finalNews->id;
$news = News::where('id','!=',$latestId)
->orderBy('id','desc')
->get();
首先,获取所有新闻
$news = News::orderBy('id','desc')->get();
然后,从 $news
中弹出最后一项(最新消息)$latest_news = $news->pop();
https://laravel.com/docs/5.5/collections#method-pop
在这种情况下不需要使用 2 个查询