Я использовал LaraShift для обновления моего приложения Laravel 4.2 до 5.0. LaraShift привел меня примерно на полпути, и я потратил 10 часов, получая 90 +% от оставшихся 50%. Я полностью застрял на входе в систему. Laravel аутентифицирует пользователя, но затем сразу же перенаправляет обратно на страницу входа. Это вершина моих сессий Контроллер:
<?php
namespace App\Http\Controllers;
use App\Services\Custom\proxyPermissions;
use App\Http\Requests\Request;
use App\Services\Custom\sendEmail;
use App\Site;
use App\User;
use Illuminate\Support\Facades\App;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Input;
use Illuminate\Support\Facades\Redirect;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Validator;
class SessionsController extends Controller
{
public function index()
{
if (Auth::check()) {
return redirect('/');
}
return view('sessions.login');
}
public function loginPost()
{
if ($t = Auth::attempt(Input::only('email', 'password'), Input::only('remember'))) {
$u = Auth::user();
if (Auth::user()->role == 'admin') {
$user = User::whereId(Auth::user()->id)->with('sites')->first();
if (isset($user->sites[0])) {
Site::store2Session($user->sites[0]->id);
} else {
Site::store2Session(1);
}
}
if (Auth::user()->role == 'admin') {
return Redirect::home();
} else {
// User is not an admin
/* After user logs in, control comes here, but user is redirected back to the login page
instead of to the intended URL or /
*/
return Redirect::intended('/');
//return Redirect::intended();
//return Redirect::intended('/')->with('flash_notice','Welcome back!');
}
}
return Redirect::back()->with('flash_error', 'Login Failed')->withInput();
}
За исключением пространства имен и операторов использования вверху, это тот же код, который был у меня в 4.2. Приложение попадает в эту строку:
return Redirect::intended('/');
внизу и затем перенаправить на / login
Функция сброса пароля работает правильно. Пользователь аутентифицируется при вводе правильного имени пользователя и пароля. У меня есть стандартная модель пользователя с идентификатором, электронной почтой, паролем.
Есть идеи?