Mysql 如何在Laravel 7的刀片视图中动态显示数据库中的项目总数
我对Laravel很陌生,在我的仪表板中,我想在一张引导卡中显示来自MySQL数据库表的项目总数,称为“项目”(参见屏幕截图)。我的控制器中有一些代码,可以从数据库中获取项目总数,但我遇到了“Undefined variable”错误。我知道我的错误在我的眼中。现在我只是在引导卡中显示静态数据。请帮忙 在my HomeController中:Mysql 如何在Laravel 7的刀片视图中动态显示数据库中的项目总数,mysql,laravel,Mysql,Laravel,我对Laravel很陌生,在我的仪表板中,我想在一张引导卡中显示来自MySQL数据库表的项目总数,称为“项目”(参见屏幕截图)。我的控制器中有一些代码,可以从数据库中获取项目总数,但我遇到了“Undefined variable”错误。我知道我的错误在我的眼中。现在我只是在引导卡中显示静态数据。请帮忙 在my HomeController中: public function showTotals() { $allProjects = Project::count();
public function showTotals()
{
$allProjects = Project::count();
return view('dashboard.index', compact('allProjects'));
}
我认为:
<div class="col-md-3"
<div class="card-counter primary">
<i class="fa fa-id-card"></i>
<span class="count-numbers">{{ $allProjects }}</span>
<span class="count-name">Projects</span>
</div>
</div>
在返回视图中更改为数组。因为计数返回数不是数组
return view('dashboard.index', ['allProjects'=>$allProjects]);
因为视图希望第二个参数是数组
view($view = null, $data = [], $mergeData = [])
它看起来像你的功能
showTotals()
不是你路线上叫的那个
我想这条路线是在呼叫
public function index(),实际上应该在其中传递$allProjects变量
要么在索引函数中调用它,要么将routes/web.php更改为调用HomeController@showTotals(). 我建议你用第一个
请发布您的路由/web.php。将一个条件放在eloquent中,然后查看,下面是代码
$project_count = Project::where('id', '>', 0)->count();
return view('dashboard.index', ['project_count' => $project_count]);
然后在你的刀片视图中显示变量值。我已经尝试过了,但是我得到了相同的错误,在我的刀片视图中有什么我需要更改的吗?你可以确定是否设置了值{{$allProjects??null}}first dd($allProjects);您得到的是Hanks,我的错误是将我的代码放在showTotals()
函数中,而不是@Alpyokay提到的index()
函数中。很高兴您解决了您的问题谢谢您的帮助。我的错误是我把代码放在showTotals()
函数中,而不是index()
函数中。不客气:)