mirror of
https://github.com/rico-vz/HeimerdingerLoL.git
synced 2025-12-06 10:10:48 +01:00
fix: query optimization
⚡ 166 Queries -> 2 Queries (cached)
This commit is contained in:
14
app/Helpers/HelperFunctions.php
Normal file
14
app/Helpers/HelperFunctions.php
Normal file
@@ -0,0 +1,14 @@
|
||||
<?php
|
||||
|
||||
function getRoleIcon($roleName)
|
||||
{
|
||||
$roleIcons = [
|
||||
'Toplane' => 'gm-top.png',
|
||||
'Jungle' => 'gm-jungle.png',
|
||||
'Midlane' => 'gm-mid.png',
|
||||
'Botlane' => 'gm-bot.png',
|
||||
'Support' => 'gm-support.png',
|
||||
];
|
||||
|
||||
return asset('img/' . $roleIcons[$roleName]);
|
||||
}
|
||||
@@ -5,6 +5,8 @@ namespace App\Http\Controllers;
|
||||
use App\Http\Requests\StoreChampionRequest;
|
||||
use App\Http\Requests\UpdateChampionRequest;
|
||||
use App\Models\Champion;
|
||||
use App\Models\ChampionRoles;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
|
||||
class ChampionController extends Controller
|
||||
{
|
||||
@@ -13,9 +15,15 @@ class ChampionController extends Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$champions = Champion::orderBy('name')->get();
|
||||
$champions = Cache::remember('championsListAllCache', 60 * 60 * 8, function () {
|
||||
return Champion::orderBy('name')->get();
|
||||
});
|
||||
|
||||
return view('champions.index', compact('champions'));
|
||||
$roles = Cache::remember('championsRolesCache', 60 * 60 * 8, function () {
|
||||
return ChampionRoles::orderBy('champion_name')->get();
|
||||
});
|
||||
|
||||
return view('champions.index', compact('champions', 'roles'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -47,17 +47,4 @@ class ChampionRoles extends Model
|
||||
|
||||
return $transformedRoles;
|
||||
}
|
||||
|
||||
public function getRoleIcon($roleName)
|
||||
{
|
||||
$roleIcons = [
|
||||
'Toplane' => 'gm-top.png',
|
||||
'Jungle' => 'gm-jungle.png',
|
||||
'Midlane' => 'gm-mid.png',
|
||||
'Botlane' => 'gm-bot.png',
|
||||
'Support' => 'gm-support.png',
|
||||
];
|
||||
|
||||
return asset('img/' . $roleIcons[$roleName]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ use Illuminate\View\Component;
|
||||
|
||||
class List_all extends Component
|
||||
{
|
||||
public function __construct(public array $champions)
|
||||
public function __construct(public array $champions, public array $roles)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user