我正在尝试设置一个基本的 Laravel 9 CRUD 应用程序,但我无法让编辑路由为用户控制器工作。
路线/web.php
Route::get('/dashboard', function () { return view('dashboard'); })
->middleware(['auth'])->name('dashboard');
use App\Http\Controllers\UserController;
Route::controller(UserController::class)->group(function(){
Route::get('user','index')->middleware('auth')->name('cases');
Route::get('user/create','create')->middleware('auth');
Route::post('user/create','store')->middleware('auth');
Route::get('user/{$id}/edit','edit')->middleware('auth');
Route::post('user/{$id}/edit','update')->middleware('auth');
Route::get('user/{$id}/delete','destroy')->middleware('auth');
Route::get('user/{id}','show')->middleware('auth');
});
require __DIR__.'/auth.php';
用户控制器.php
class UserController extends Controller
{
function edit(int $id)
{
echo 123;
}
我收到 404 NOT FOUND 页面
另外,为什么我看不到此错误的堆栈跟踪?
另外,在一些示例中,我看到有人在控制器方法声明中使用模型类名作为参数类型,例如:
function edit(User $id)
{
echo 123;
}
但是,我也看到了其他使用int的示例。那么哪个是正确的呢?