首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在控制器上显示已添加DB的最新/最新产品

如何在控制器上显示已添加DB的最新/最新产品
EN

Stack Overflow用户
提问于 2021-11-09 20:47:18
回答 1查看 35关注 0票数 1

我正在制作一个电子商务商店,我想要显示使用我的产品控制器从数据库添加的最新记录。有谁是laravel专家吗?我不知道该怎么做。

这是我的控制器中的代码,它在登录页面上显示产品

代码语言:javascript
运行
复制
public function index()
  {
  return view('/welcome')->with([
  'products' => $this->getProducts(4),
]);
}

public function getProducts(int $limit) {
return Product::orderByDesc('created_at')->skip(0)->take($limit)->get();
}

在实现了推荐的更新并关闭了'created_at‘字符串之后,我得到了一个错误’为foreach()提供了无效的参数‘。有什么方法可以让我摆脱这个错误吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-09 20:57:19

如果您的product表有一些日期时间列,那么您必须按该列排序,因为您希望显示最新的结果。因此您可以像下面这样修改您查询

代码语言:javascript
运行
复制
Product::orderByDesc('created_at)->offset(0)->limit($limit)->get();

或者,您也可以使用替代的跳过并获取方法

代码语言:javascript
运行
复制
Product::orderByDesc('created_at)->skip(0)->take($limit)->get();

如果您没有datetime列(在本例中为created_at),而您的Product模型具有自动递增的id列,那么您可以这样做

代码语言:javascript
运行
复制
Product::orderBy('id', 'desc')->skip(0)->take($limit)->get();

有关更多信息,请阅读this

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69904881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档