【问题标题】:Laravel the actual order of rowsLaravel 实际的行顺序
【发布时间】:2020-05-25 14:36:46
【问题描述】:

在 Laravel 5.1 中,有没有办法知道特定 ID 在表中的顺序。比如说我有一个名为文章的表格,如下所示:

ID|Title | Body
----------------,
1 |   x  | y
2 |   x  | y
10|   x  | y
12|   x  | Y  
14|   x  | y

在上表中,我们有 ID 为 10 的文章是第三个,这意味着从 3 到 9 的文章被删除。 ID 为 12 的文章也是第四个,文章 ID 14 是第五个。例如,我怎么知道文章 ID 10 在表格中排在第三位?

谢谢

【问题讨论】:

  • 为什么需要这些信息?
  • 这有关系吗?长话短说,但遗憾的是我需要这个功能
  • 如果您使用 laravel,您可以在 eny 中为每个 for 等使用变量 $loop。$loop->index 将为您提供从 0 开始的行的索引。适用于编号表行.不知道这是不是你需要的。
  • 是的,它是laravel,请您提交一个简单的解决方案。我认为它在 v5.1 中不可用

标签: database laravel eloquent


【解决方案1】:

例如:

$articles = Article::all();
$counter=1;
foreach($articles as $article) {
    echo $counter.'-'.$article->id;
    echo '</ br>' ;
    $counter++;
} 

将导致:

1-1
2-2
3-10
4-12

.......

【讨论】:

  • 谢谢。但是 loop->index 仅在 Laravel 5.3 中可用,而我使用的是旧版本
  • 只有当你使用好的老式柜台时。初始化 bofore 循环:$counter=1。在循环内部执行 $counter++。计数器将保存您通过时的行数。
  • 所以如果我想知道文章 ID 10 的顺序,我必须调用以获取数据库中的所有行,然后将每一行与 ID 10 进行比较?
  • 根据您使用的数据库,可以进行一些调整。例如。 constituteweb.com/how-to-get-the-rownumber-in-laravel-eloquent。我仍然认为你不需要那个行号。
  • 我觉得你一直问我为什么需要 x 功能很奇怪
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-09-25
  • 2014-10-19
  • 1970-01-01
  • 2013-12-22
  • 1970-01-01
  • 2019-03-30
  • 2018-01-30
相关资源
最近更新 更多