перейти к части...
Для начала нам нужно добавить стандартную систему аутентификации Laravel 5 в наш проект. Для этого откройте терминал в корне проекта и выполните следующую команду:
php artisan make:auth
Данная команда создаст все необходимые маршруты, котроллеры и вью. Теперь мы можем заняться отключением регистрации. Откройте файл routes/web.php
и удалите следующую строку:
Auth::routes();
Затем откройте файл vendor/laravel/framework/src/Illuminate/Routing/Router.php
и найдите метод, который называется auth()
. Это тот самый метод, который вызывается строкой Auth::routes()
, которую мы только что удалили из файла маршрутов. Скопируйте содержимое этого метода и вставьте его в начало файла маршрутов routes/web.php
.
// Authentication Routes...
$this->get('login', 'Auth\LoginController@showLoginForm')->name('login');
$this->post('login', 'Auth\LoginController@login');
$this->post('logout', 'Auth\LoginController@logout')->name('logout');
// Registration Routes...
$this->get('register', 'Auth\RegisterController@showRegistrationForm')->name('register');
$this->post('register', 'Auth\RegisterController@register');
// Password Reset Routes...
$this->get('password/reset', 'Auth\ForgotPasswordController@showLinkRequestForm')->name('password.request');
$this->post('password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.email');
$this->get('password/reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.reset');
$this->post('password/reset', 'Auth\ResetPasswordController@reset');
Это дает нам полный контроль над стандартными маршрутами системы аутентификации Laravel. Как вы, наверное, уже догадались, для того, чтобы отключить регистрацию, достаточно просто удалить или закомментировать два маршрута:
// Registration Routes...
$this->get('register', 'Auth\RegisterController@showRegistrationForm')->name('register');
$this->post('register', 'Auth\RegisterController@register');
Если вы решите вернуть регистрацию позже - просто раскомментируйте эти строчки. Если вы уверены, что регистрация вам точно не понадобится в будущем, вы может также удалить файл контроллера (app/Http/Controllers/Auth/RegisterController.php
) и вью (resources/view/auth/register.blade.php
). Подобным образом вы можете отключить и другие компоненты системы аутентификации.
Все материалы на сайте voerro абсолютно бесплатны и написаны автором в свободное от основной работы время. Если уроки сайта оказались для вас полезными, пожалуйста, помогите проекту. Спасибо!