From d28d3b32f8df3dce4b082a60971a3796c0ede71c Mon Sep 17 00:00:00 2001 From: anne-maina Date: Tue, 12 Nov 2024 11:35:26 +0300 Subject: [PATCH] route changes --- routes/api.php | 5 ++- routes/web.php | 86 ++++++++++++++++++++++++++++++++++++++++++-------- 2 files changed, 77 insertions(+), 14 deletions(-) diff --git a/routes/api.php b/routes/api.php index 2b7d1e58..6fedc919 100644 --- a/routes/api.php +++ b/routes/api.php @@ -20,7 +20,10 @@ }); Route::group(['middleware' => 'auth:sanctum'], function() { - + // Task 12: Manage tasks with endpoint /api/v1/tasks/*****. + // Keep in mind that prefix should be /api/v1. + // Add ONE line to assign 5 resource routes to TaskController + // Put one code line here below Route::prefix('/api/v1')->group(function(){ Route::apiResource('/tasks', TaskController::class); }); diff --git a/routes/web.php b/routes/web.php index 14b40881..0529413c 100644 --- a/routes/web.php +++ b/routes/web.php @@ -18,22 +18,82 @@ | contains the "web" middleware group. Now create something great! | */ -Route::get('/', [HomeController::class, 'index']); -Route::get('/user/{name}', [UserController::class, 'show']); -Route::get('/about', function () { return view('pages.about'); })->name('about'); + +// Task 1: point the main "/" URL to the HomeController method "index" +// Put one code line here below + +Route::get('/',[HomeController::class, 'index']); + +// Task 2: point the GET URL "/user/[name]" to the UserController method "show" +// It doesn't use Route Model Binding, it expects $name as a parameter +// Put one code line here below + +Route::get('/user/{name}',[UserController::class,'show']); + +// Task 3: point the GET URL "/about" to the view +// resources/views/pages/about.blade.php - without any controller +// Also, assign the route name "about" +// Put one code line here below + +Route::get('/about',function(){ + return view('pages.about'); +})->name('about'); + +// Task 4: redirect the GET URL "log-in" to a URL "login" +// Put one code line here below + Route::redirect('/log-in', '/login'); -Route::middleware('auth')->group(function () { -Route::prefix('app')->group(function () { -Route::get('/dashboard', DashboardController::class)->name('dashboard'); -Route::resource('/tasks', TaskController::class); -}); +// Task 5: group the following route sentences below in Route::group() +// Assign middleware "auth" +// Put one Route Group code line here below +Route::middleware('auth')->group(function(){ -Route::middleware('is_admin')->prefix('admin')->group(function () { -Route::get('/dashboard', AdminDashboardController::class); -Route::get('/stats', StatsController::class); -}); + // Tasks inside that Authenticated group: + + // Task 6: /app group within a group + // Add another group for routes with prefix "app" + // Put one Route Group code line here below + + Route::prefix('app')->group(function(){ + // Tasks inside that /app group: + + // Task 7: point URL /app/dashboard to a "Single Action" DashboardController + // Assign the route name "dashboard" + // Put one Route Group code line here below + Route::get('/dashboard',DashboardController::class)->name('dashboard'); + + // Task 8: Manage tasks with URL /app/tasks/***. + // Add ONE line to assign 7 resource routes to TaskController + // Put one code line here below + Route::resource('/tasks', TaskController::class); + + // End of the /app Route Group + }); + + // Task 9: /admin group within a group + // Add a group for routes with URL prefix "admin" + // Assign middleware called "is_admin" to them + // Put one Route Group code line here below + + Route::middleware('is_admin')->prefix('admin')->group(function(){ + // Tasks inside that /admin group: + + // Task 10: point URL /admin/dashboard to a "Single Action" Admin/DashboardController + // Put one code line here below + + Route::get('/dashboard', AdminDashboardController::class); + + // Task 11: point URL /admin/stats to a "Single Action" Admin/StatsController + // Put one code line here below + + Route::get('/stats', StatsController::class); + + // End of the /admin Route Group + }); + +// End of the main Authenticated Route Group }); +// One more task is in routes/api.php require __DIR__.'/auth.php'; -