Ошибка выхода из системы аутентификации Laravel 4

Я работаю над процедурой аутентификации входа/выхода для моего проекта Laravel 4 и столкнулся с проблемой выхода из системы.

У меня есть пользовательская таблица с именем пользователя, адресом электронной почты и паролем (а также столбцами идентификатора и временных меток). Если я перехожу на защищенную страницу, я могу войти в систему с помощью системного диалога, но выход из системы вызывает ошибку. Вот мои соответствующие маршруты:

        Route::get('/logout', function()
    {
        Auth::logout();
        return View::make('logout');
    });

    Route::get('spotlight', array(
        'before' => 'auth.basic' ,
        function()
    {
        return View::make('spotlight');
    }
    ));

И вот ошибка, которую я получаю, когда захожу в /logout:

[2014-05-29 17:33:56] production.ERROR: exception 'Illuminate\Database\QueryException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'remember_token' in 'field list' (SQL: update `users` set `updated_at` = 2014-05-29 17:33:56, `remember_token` = KiZHAYFKZnr0qwntsu0FhXWdwS37KkaQO1omS1OTnJ6DjpbmU9QXQenS7uGc where `id` = 1)' in /Users/jlowery/authapp/vendor/laravel/framework/src/Illuminate/Database/Connection.php:555

Где должен быть Remember_token? Я настроил таблицу сеансов, но в ней нет такого столбца. Любые идеи о том, где я ошибаюсь?


person Joe Lowery    schedule 29.05.2014    source источник


Ответы (1)


Вы неправильно обновились до версии >=4.1.26.

Вам нужно добавить remember_token в таблицу пользователей и обновить модель User, если вы используете драйвер аутентификации Eloquent.

Прочтите руководство по обновлению в документации Laravel для получения более подробной информации.

person Laurence    schedule 29.05.2014
comment
Ага! Это сработало. Итак, если бы я запустил обновление композитора и установил Laravel для своего проекта, были бы включены обновления пользовательской модели? - person Joe Lowery; 29.05.2014
comment
нет. вы запустили обновление композитора, но вам пришлось внести некоторые коррективы вручную. Это было критическое обновление из-за проблемы безопасности, которую нужно было исправить. Приходилось делать это вручную. - person Laurence; 29.05.2014
comment
Спасибо - у меня проблема с входом в систему - я задам еще один вопрос и надеюсь, что вы сможете взглянуть. - person Joe Lowery; 29.05.2014