Laravel 8:目标 class 不存在错误
Laravel 8: Target class does not exist ERROR
我有两个 ArticleController
,其中一个放在 Controllers 中的 Admin
目录中:
use App\Http\Controllers\Admin\ArticleController as ArticleADMController;
use App\Http\Controllers\ArticleController;
Route::get('/articles/{articleSlug}' , [ArticleController::class, 'single']);
Route::prefix('admin')->namespace('Admin')->group(function() {
Route::resource('articles' , ArticleADMController::class)->except(['show']);
});
现在每当我想去 /admin/articles
时,我都会收到这条消息:
Illuminate\Contracts\Container\BindingResolutionException Target class
[Admin\App\Http\Controllers\Admin\ArticleController] does not exist.
但是,它确实存在于此图片中:
那么这里出了什么问题?我该如何解决这个问题?
如果你知道,请帮助我解决这个问题,我非常感谢你们的任何想法或建议...
提前致谢。
从您的路由中删除名称空间('Admin')。您正在为 Admin/ArticleController 添加前缀。由于您已经使用了命名空间路径,因此无需在路由组中单独添加任何命名空间。
如果仍然无法解决问题,请在您的 Admin\ArticleController 中分享命名空间声明。
对于 Admin 路由:您已经指定控制器来自 admin 路径,试试这个。
对于文章路线:删除“使用”并直接在“文章”路线的路径中包含完整路径。
Route::get('/articles/{articleSlug}' , [App\Http\Controllers\ArticleController::class, 'single']);
Route::prefix('admin')->namespace('Admin')->group(function() {
Route::resource('articles' , ArticleController::class)->except(['show']);
});
我有两个 ArticleController
,其中一个放在 Controllers 中的 Admin
目录中:
use App\Http\Controllers\Admin\ArticleController as ArticleADMController;
use App\Http\Controllers\ArticleController;
Route::get('/articles/{articleSlug}' , [ArticleController::class, 'single']);
Route::prefix('admin')->namespace('Admin')->group(function() {
Route::resource('articles' , ArticleADMController::class)->except(['show']);
});
现在每当我想去 /admin/articles
时,我都会收到这条消息:
Illuminate\Contracts\Container\BindingResolutionException Target class [Admin\App\Http\Controllers\Admin\ArticleController] does not exist.
但是,它确实存在于此图片中:
那么这里出了什么问题?我该如何解决这个问题?
如果你知道,请帮助我解决这个问题,我非常感谢你们的任何想法或建议...
提前致谢。
从您的路由中删除名称空间('Admin')。您正在为 Admin/ArticleController 添加前缀。由于您已经使用了命名空间路径,因此无需在路由组中单独添加任何命名空间。
如果仍然无法解决问题,请在您的 Admin\ArticleController 中分享命名空间声明。
对于 Admin 路由:您已经指定控制器来自 admin 路径,试试这个。
对于文章路线:删除“使用”并直接在“文章”路线的路径中包含完整路径。
Route::get('/articles/{articleSlug}' , [App\Http\Controllers\ArticleController::class, 'single']);
Route::prefix('admin')->namespace('Admin')->group(function() {
Route::resource('articles' , ArticleController::class)->except(['show']);
});