我想用 Laravel 8 创建一个 dasboard。我想统计数据库中的所有票证并在仪表板中显示数量。不幸的是它不起作用你有什么想法吗?
控制器代码
namespace App\Http\Controllers;
use App\Models\Ticket;
use Illuminate\Http\Request;
class DashboardController extends Controller
{
public function index()
{
//
$ticketsCount = Ticket::count();
return view('dashboard.index', compact('ticketsCount'));
}
}
查看代码
<div class="col-lg-3 col-6">
<!-- small box -->
<div class="small-box bg-info">
<div class="inner">
<h3>{{ $ticketsCount->count() }}</h3>
<p>Open Tickets</p>
</div>
<div class="icon">
<i class="ion ion-bag"></i>
</div>
<a href="{{ url('tickets') }}" class="small-box-footer">More info <i class="fas fa-arrow-circle-right"></i></a>
</div>
</div>
答案 0 :(得分:2)
从您的视图中删除 ->count()
,您已经将其计入控制器
$ticketsCount = Ticket::count();
视图代码:
<div class="col-lg-3 col-6">
<!-- small box -->
<div class="small-box bg-info">
<div class="inner">
<h3>{{ $ticketsCount }}</h3>
<p>Open Tickets</p>
</div>
<div class="icon">
<i class="ion ion-bag"></i>
</div>
<a href="{{ url('tickets') }}" class="small-box-footer">More info <i class="fas fa-arrow-circle-right"></i></a>
</div>
</div>
答案 1 :(得分:1)
如我所见,您的路由器返回视图文件,但未进入控制器。
Route::get('/dashboard', function () {
return view('dashboard.index');
});
把你的路由器改成(Laravel 8 之前的版本)
Route::get('/dashboard', 'DashboardController@index');
Laravel 8 之后
use App\Http\Controllers\DashboardController;
Route::get('/dashboard', [DashboardController::class, 'index']);
答案 2 :(得分:0)
我试图获取视图上显示的用户数量。不幸的是,我总是收到一条错误消息...
错误:
ErrorException
Undefined variable: counter (View: /laravel/resources/views/dashboard/index.blade.php)
路由(网络):
Route::get('/dashboard', function () {
return view('dashboard.index');
});
模型(仪表板)
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Dashboard extends Model
{
use HasFactory;
}
控制器(仪表板控制器)
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\DB;
class DashboardController extends Controller
{
public function index()
{
$counter = DB::table('users')->count();
return view('dashboard.index', compact('counter'));
}
}
查看(仪表板/index.blade.php):
Users: {{ $counter }}