Laravel 5.6 после входа перенаправить на страницу входа - PullRequest
0 голосов
/ 01 июня 2018

РЕШЕНО

РЕШЕНИЕ проблема заключается в том, что в таблице базы данных используется первичный ключ. Я передаю только имя первичного ключа атрибуту $ primarykey в модели

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

Пользователи моей модели

<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable
{
    use Notifiable;

    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */

    protected $table = 'pessoas';

    protected $fillable = [
        'nome_completo', 'email', 'password',
    ];



    /**
     * The attributes that should be hidden for arrays.
     *
     * @var array
     */
    protected $hidden = [
        'password', 'remember_token',
    ];
}

Метод входа

public function login(Request $request)
    {
        $credentials = $request->only('email', 'password');

        //$email = $request->input('email');
        //$password = $request->input('password'));

        if (Auth::attempt($credentials)) {
            //return Auth::user()->nome_completo;
            return redirect()->intended('/usuario/home');
        }
    }

Маршруты с промежуточным ПО и логином

Route::group(['middleware' => ['auth']], function () {
    Route::get('/usuario/home', 'Usuarios\UsuarioController@renderHome')->name('home');

    Route::get('/usuario/perfil', function () {
        return view('usuario.meuperfil');
    })->name('perfil');

    Route::get('/usuario/estoque', function () {
        return view('usuario.estoque');
    })->name('estoque');

    Route::get('/usuario/fotos', function () {
        return view('usuario.fotos');
    })->name('fotos');

    Route::get('/usuario/carrinho', function () {
        return view('usuario.carrinho');
    })->name('carrinho');

    Route::get('/usuario/orcamentos', function () {
        return view('usuario.orcamentos');
    })->name('orcamentos');

    Route::get('/usuario/enviados', function () {
        return view('usuario.enviados');
    })->name('enviados');

    Route::get('/usuario/tickets', function () {
        return view('usuario.tickets');
    })->name('tickets');

    Route::get('/usuario/calculadora', function () {
        return view('usuario.calculadora');
    })->name('calculadora');

    Route::get('/usuario/tutorial', function () {
        return view('usuario.tutorial');
    })->name('tutorial');
});



Route::get('/login', function () {
    return view('usuario.login');
})->name('login');

Route::post('/login', 'Usuarios\UsuarioController@login');
Route::get('/logout', 'Usuarios\UsuarioController@logout')->name('logout');

Какое решение проблемы?

спасибо за помощь

1 Ответ

0 голосов
/ 01 июня 2018

Какое ваше промежуточное ПО для входа в систему?Разве это не должно быть промежуточное программное обеспечение "Auth"?Я думаю, что причина в вашем промежуточном программном обеспечении. Поскольку вы переходите на защиту маршрутов, это означает, что ваша функция «попытки» была успешной.

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