在 blade Laravel 5.3 中显示聚合

Displaying aggregate in blade Laravel 5.3

我在数据库中有以下 table

我有以下查询

      $users = DB::table('results')
            ->select('student_id', DB::raw('SUM(obtained_marks) as total_marks'))
            ->groupBy('student_id')
            ->get();

我的查询输出如下,这是我的需要,但我在 blade

中显示数据时遇到困难

在我看来,当我使用 foreach 循环显示总和结果时,它被打印在一个数组中。 For循环如下

     @foreach($users as $names)
     <td>{{$names->studnent_id}}</td>
     <td>{{$names->total_marks}}</td>
     @endforeach

当我执行此操作时,出现以下视图

想要输出

student_id -------------------obtained_marks

1--------------------------------30

2 ------------------------------70

3--------------------------------60

伙计,你缺少行。

@foreach($users as $names)
    <tr>
        <td>{{$names->student_id}}</td>
        <td>{{$names->total_marks}}</td>
    </tr>
@endforeach

我看到你的问题了。
您没有正确拼写密钥。 在你的 foreach 循环中。将 studnet_id 更改为 student_id 将来,在您的开发环境中工作时打开错误报告和通知。这会有所帮助。

当您处理 table 时,请始终记住 tdtr 标签下。所以你修改后的代码是这样的:

@foreach($users as $names)
    <tr>
        <td>{{$names->student_id}}</td>
        <td>{{$names->total_marks}}</td>
    </tr>
@endforeach

每次迭代都会创建一个新的 tr,其下有 td's