<?php
use App\Http\Controllers\EpisodesController;
use App\Http\Controllers\SeasonsController;
use App\Http\Controllers\SeriesController;
use Illuminate\Support\Facades\Route;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/', function () {
return redirect('/series');
});
Route::get('/series', [SeriesController::class, 'index'])->name('series.index');
Route::get('/series/criar', [SeriesController::class, 'create']);
Route::post('/series/salvar', [SeriesController::class, 'store'])->name('series.store');
Route::delete('/series/destroy/{serie}',[SeriesController::class, 'destroy'])->name('series.destroy');
Route::get('/series/edit/{serie}',[SeriesController::class, 'edit'])->name('series.edit');
Route::put('/series/update/{serie}', [SeriesController::class, 'update'])->name('series.update');
Route::get('/series/{series}/seasons', [SeasonsController::class, 'index'])->name('seasons.index');
Route::get('/seasons/{season}/episodes', [EpisodesController::class, 'index'])->name('episodes.index');
<?php
namespace App\Http\Controllers;
use App\Models\Season;
class EpisodesController
{
public function index(Season $season)
{
return view('episodes.index',['episodes'=>$season->episodes]);
}
}
<x-layout title="Temporadas de '{!! $series->nome !!}'">
<ul class="list-group">
@foreach ( $seasons as $season)
<li class="list-group-item d-flex justify-content-between align-items-center">
<a href="{{ route('episodes.index',$season->id) }}">
Temporada {{ $season->number }}
</a>
<span class="badge bg-dark">
{{ $season->episodes->count() }}
</span>
</li>
@endforeach
</ul>
</x-layout>