Удалить определенный маршрут из логина Laravel 6 - PullRequest
2 голосов
/ 31 октября 2019

Я хочу удалить несколько маршрутов из автоматического перенаправления входа в систему. Если я сейчас создаю какой-либо новый маршрут, все они перенаправляются на логин.

web.php

Route::get('/', function () {
    return view('welcome');
});

Auth::routes();
// Route::get('/home', 'HomeController@index')->name('home');
Route::get('/hello', 'HomeController@hello');


Route::group(['middleware' => ['auth']], function () {
    Route::get('/home', 'HomeController@index');
});

Я пытался использовать группу промежуточного программного обеспечения, но это ничего не дало. Когда я удаляю Auth::routes(), весь логин исчезает. Я попытался найти это, но у меня есть только способы удалить регистрацию, которая мне не нужна.

Ответы [ 3 ]

3 голосов
/ 31 октября 2019

Вызов Auth::routes() передается на Illuminate\Routing\Router::auth().

Вы можете передать массив от $options до Auth::routes(), если поддерживаемый пропускает маршруты, которые выхотите удалить, или вы вообще не можете использовать Auth::routes() и просто скопировать / вставить биты из вышеуказанной ссылки в ваш файл маршрутов.

Например, если вы хотите пропустить маршруты сброса пароля, вы быделать:

Auth::routes(['reset' => false]);
0 голосов
/ 31 октября 2019

Прежде всего проверьте ваш HomeController, если в вашем конструкторе есть ссылка на промежуточное ПО, например.

public function __construct() {
    $this->middleware('auth');
}

Затем промежуточное программное обеспечение применяется ко всему контроллеру, а не только к определенным функциям.

Вы можете легко удалить стандартные маршруты аутентификации laravel, установив false в своей ссылке на аутентификацию. Например, Auth::routes(['register' => false]);. Это также работает для login, verify и т. Д.

И я бы упростил определение вашего маршрута.

Route::middleware(['auth'])->group(function () {
    Route::get('/home', 'HomeController@index');
});
0 голосов
/ 31 октября 2019

Route :: group (['middleware' => ['auth'], 'кроме' => 'маршрутов, разделенных,'], function () {Route :: get ('/ home', 'HomeController@индекс'); });проверить это, я думаю, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...