Can you paste only the relevant parts of the working and not working php artisan route:list
My route is not redirecting
My route to \table\detailed is not redirecting to the Controller, I wanted to put "table.detailed" inside the "table" group.
THIS IS MY ENTIRE ROUTE FILE:
<?php
use App\Mail\MessageMailTest;
use GuzzleHttp\Middleware;
use Illuminate\Support\Facades\Route;
use App\Models\User;
use App\Http\Middleware\VerifyAdmMiddleware;
/*
|--------------------------------------------------------------------------
| 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 () {
if (Auth::check()) {
return redirect()->route('home');
} else {
return view('welcome');
}
})->name('welcome');
Auth::routes(['verify' => true]);
Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])
->name('home')
->middleware('verified');
Route::middleware('verified')
->resource('table', 'App\Http\Controllers\TableController');
Route::middleware('verified')
->get('/table', [\App\Http\Controllers\TableController::class, 'index'])
->name('table');
Route::prefix('/table')->middleware('verified')->group(function () {
Route::middleware(VerifyAdmMiddleware::class)->get('/create', [\App\Http\Controllers\TableController::class, 'create'])->name('table.create');
Route::middleware(VerifyAdmMiddleware::class)->post('/create', [\App\Http\Controllers\TableController::class, 'store'])->name('table.store');
Route::middleware(VerifyAdmMiddleware::class)->post('/edit', [\App\Http\Controllers\TableController::class, 'edit'])->name('table.edit');
Route::middleware(VerifyAdmMiddleware::class)->post('/destroy', [\App\Http\Controllers\TableController::class, 'destroy'])->name('table.destroy');
Route::post('/list', [\App\Http\Controllers\TableController::class, 'list'])->name('table.list');
});
Route::middleware('verified')->get('/detailed', [\App\Http\Controllers\TableController::class, 'show_detailed'])->name('table.detailed');
Route::middleware('verified')
->middleware(VerifyAdmMiddleware::class)
->resource('gm', 'App\Http\Controllers\GmController');
Route::middleware('verified')
->middleware(VerifyAdmMiddleware::class)
->get('/gm', [\App\Http\Controllers\GmController::class, 'index'])
->name('gm');
Route::prefix('/gm')->middleware('verified')->middleware(VerifyAdmMiddleware::class)->group(function () {
Route::get('/create', [\App\Http\Controllers\GmController::class, 'create'])->name('gm.create');
Route::post('/create', [\App\Http\Controllers\GmController::class, 'store'])->name('gm.store');
Route::post('/search', [\App\Http\Controllers\GmController::class, 'search'])->name('gm.search');
Route::post('/list', [\App\Http\Controllers\GmController::class, 'list'])->name('gm.list');
});
Route::resource('user', 'App\Http\Controllers\UserController')
->middleware('verified');
Route::prefix('/user')->middleware('verified')->group(function () {
Route::get('/', [\App\Http\Controllers\UserController::class, 'index'])->name('profile');
});
Route::resource('adm', 'App\Http\Controllers\AdmController')
->middleware('verified')
->middleware(VerifyAdmMiddleware::class);
Route::prefix('/dashboard')->middleware('verified')->middleware(VerifyAdmMiddleware::class)->group(function () {
Route::get('/', [\App\Http\Controllers\AdmController::class, 'dashboard'])->name('dashboard');
Route::get('/reports', [\App\Http\Controllers\AdmController::class, 'report_view'])->name('dashboard.report');
Route::get('/pdf', [\App\Http\Controllers\AdmController::class, 'create_pdf'])->name('pdf');
});
// Route::get('/message-teste', function () {
// return new MessageMailTest();
// // Mail::to('[email protected]')->send(new MessageMailTest());
// // return "deu certo";
// });
Route::fallback(function () {
return view('fallback');
});
NOT WORKING:
Route::prefix('/table')->middleware('verified')->group(function () {
Route::middleware(VerifyAdmMiddleware::class)->get('/create', [\App\Http\Controllers\TableController::class, 'create'])->name('table.create');
Route::middleware(VerifyAdmMiddleware::class)->post('/create', [\App\Http\Controllers\TableController::class, 'store'])->name('table.store');
Route::middleware(VerifyAdmMiddleware::class)->post('/edit', [\App\Http\Controllers\TableController::class, 'edit'])->name('table.edit');
Route::middleware(VerifyAdmMiddleware::class)->post('/destroy', [\App\Http\Controllers\TableController::class, 'destroy'])->name('table.destroy');
Route::post('/list', [\App\Http\Controllers\TableController::class, 'list'])->name('table.list');
Route::get('/detailed', [\App\Http\Controllers\TableController::class, 'show_detailed'])->name('table.detailed');
});
WORKS
Route::prefix('/table')->middleware('verified')->group(function () {
Route::middleware(VerifyAdmMiddleware::class)->get('/create', [\App\Http\Controllers\TableController::class, 'create'])->name('table.create');
Route::middleware(VerifyAdmMiddleware::class)->post('/create', [\App\Http\Controllers\TableController::class, 'store'])->name('table.store');
Route::middleware(VerifyAdmMiddleware::class)->post('/edit', [\App\Http\Controllers\TableController::class, 'edit'])->name('table.edit');
Route::middleware(VerifyAdmMiddleware::class)->post('/destroy', [\App\Http\Controllers\TableController::class, 'destroy'])->name('table.destroy');
Route::post('/list', [\App\Http\Controllers\TableController::class, 'list'])->name('table.list');
});
Route::middleware('verified')->get('/detailed', [\App\Http\Controllers\TableController::class, 'show_detailed'])->name('table.detailed');
@Keura Ok I think you have them backward because when you're putting it in the group, it's adding a prefix of /table/ to the path, and when it's not in the group, it doesn't have that prepended to it.
Either way, if you want to put it in the group, with the /table/ prepended to the path (changing it from /detailed to /table/detailed), make sure when you're trying to access that route that you're using the correct path.
For example:
https://site.test/detailed
vs.
https://site.test/table/detailed
Please or to participate in this conversation.