我使用make:auth
创建了在基础应用程序中运行良好的登录脚手架。但是我正在创建一个包,所以我已经将文件移动到我的包中各自的位置。
我已将make:auth
应用创建的路线命名为
Route::group(['middleware' => 'web'], function () {
Route::auth();
Route::get('/home', 'Package\Namespace\HomeController@index');
});
当我评论Route::auth();
时,一切似乎都正常。当我保留Route::auth
时出现错误
Class Auth\AuthController does not exist
我无法理解问题所在。我对auth()
辅助函数知之甚少。
答案 0 :(得分:8)
明显的错误......
在Router.php
auth()
函数名称空间与默认的Controllers
名称空间相关。
删除auth()
函数并将所有命名空间路由添加到路径文件中当然可以解决这个问题
// Authentication Routes...
Route::get('login', 'App\Http\Controllers\Auth\AuthController@showLoginForm');
Route::post('login', 'App\Http\Controllers\Auth\AuthController@login');
Route::get('logout', 'App\Http\Controllers\Auth\AuthController@logout');
// Registration Routes...
Route::get('register', 'App\Http\Controllers\Auth\AuthController@showRegistrationForm');
Route::post('register', 'App\Http\Controllers\Auth\AuthController@register');
// Password Reset Routes...
Route::get('password/reset/{token?}', 'App\Http\Controllers\Auth\PasswordController@showResetForm');
Route::post('password/email', 'App\Http\Controllers\Auth\PasswordController@sendResetLinkEmail');
Route::post('password/reset', 'App\Http\Controllers\Auth\PasswordController@reset');