Как выполнить аутентификацию с помощью laravel 5.4
- Привет. Я не могу заставить что-либо работать из-за тысяч микро-PHP-классов, разбросанных по другим тысячам папок, созданных Laravel. Я постоянно получаю всевозможные забавные ошибки, просто пытаясь увидеть, что приложение действительно может работать в Laravel и что это не миф. Во-первых, мне пришлось побороться со всеми предложениями по этот вопрос[^К сожалению, ответ, который помог мне, был предпоследним на такой длинной нити фреймворков, живущих в отрицании. Я сталкивался с десятками других, рыскал по учебным сайтам, читал Аутентификация-Laravel - PHP-фреймворк для веб-мастеров[^] и вопросы stackoverflow с устаревшими ответами на загадочные ошибки, которыми я был пронизан. Это продолжалось в течение последних 7 дней.
Некоторых ошибок можно было бы избежать, если бы мое имя таблицы аутентификации было просто "пользователи", и даже сейчас, когда я сменил его на" Пользователи", я все еще застрял.
Что я уже пробовал:
В конце концов я вошел в систему в какой-то момент, удалив эту строку
$this->middleware('auth');
из
HomeController
затем конструктор вручную настраивает мой собственный auth, как я сделал бы за 30 минут, если бы разрабатывал его с нуля. Но это казалось надуманным. В учебниках говорится, что все должно работать из коробки, не касаясь никаких собственных функций PHP, поэтому я раскомментировал строку и продолжил извиваться.Нынешняя ситуация такова, что форма входа просто лежит там, хотя я вручную засеял свою базу данных. Из
web.php
файл (который, как я понимаю, является neo routes.php), у меня естьRoute::post('/login', 'HomeController@loginPost');
Затем в его контроллере последний фрагмент, который я пробовал, выглядит так
public function loginPost() { var_dump(Input::all()); if (Auth::attempt(Input::all())) { var_dump('expression'); User::create([ 'username' => strtolower(Input::get('username')), 'password' => Hash::make(Input::get('password')), ]); $user = User::where('username', '=', strtolower(Input::get('username'))); Auth::login($user); } else var_dump('expression2'); }
Вероятно, там должна быть электронная почта вместо имени пользователя, но Я заменил все в представлении, заменив электронную почту на имя пользователя, так как идентификатор аутентификации приложения должен быть их именами пользователей, а не их электронными письмами. Когда я нажимаю enter сейчас, страница просто перезагружается с пустыми полями ввода. Он даже устал бросать в меня ошибки. Есть ли выход или Ларавель просто не для меня?