[已解决] 如何在 blade 模板中显示数据?
环境 Laradock
版本 Laravel 5.8
目标:我需要在数据库中汇总某列数据的总和,用于显示在主页html的某个位置上。
过程如下:
1.在控制器中使用查询构造器完成了该数据列的汇总计算,并且确认能够得到准确的数值。
public function total_business_volume()
{
$businessA = DB::table('unit_data')->sum('业务收入A值(万)');
return "$businessA";
}
2.在 Route 路由器文件 web.php 中定义了该控制器方法和具体URL。
Route::get('/total_business_volume', 'DataController@total_business_volume')->name('total');
3.在 Index.blade.php 中的特定位置使用该路由名称,想要把在过程1中得到的数据结果显示出来在网页上。
<div>当前总业务量</div>
<p>{{ route('total') }}</p>
</div>
4.然鹅刷新之后主页仍然只显示了 Route 文件里设定好的地址名称:
5.我肯定是有一些东西没有搞懂所以我不知道应该怎么完成我想要的结果,请各位如果有思路的话告诉我应该查阅哪部分知识或者提示我应该怎么处理。
再此先谢过大家。
之前查看了路由绑定的文档和查询构造器的文档内容,可是怎么都没办法解决,原来是Blade模板使用不当,感谢版主指出的问题。
目前问题已解决,感谢版主给的发帖指导和技术指导,这是第一次发帖,很多需要向各位学习的地方(查看通知的时候发现被版主投诉吓了我一跳0 x 0)。以下是解决问题的简要说明:
真正没有做好的地方在于控制文件没有写对,正确的如下:
public function total_business_volume()
{
$businessA = DB::table('unit_data')->sum('业务收入A值(万)');
return view('index',['businessA' => $businessA ]);
}
最后修改一下 Web.php 文件:
Route::get('/',
'DataController@total_business_volume')->name('total');
然后在 Blade 主页中修改:
<div>当前总业务量</div>
<p> {{ $businessA }} </p>
最后刷新后网页就能显示出来正确的计算值。
这其实不是个好问题,不过我决定暂时不做删除裁决,你所问的问题只要看文档就可以轻松解决,能问出这个问题说明你就没阅读过laravel的这部分文档。
Blade 模板《Laravel 5.8 中文文档》