Подтвердить что ты не робот

Как я могу использовать часового с laravel 5?

Я попытался установить часовое устройство в laravel 5, но он не работает. Я хотел бы знать, сделал ли кто-нибудь это и как это сделать.

Обновление: я использовал инструкции для Laravel 4.

4b9b3361

Ответ 1

У меня это работает.

  • Официальной поддержки сейчас нет для Sentry в L5. Они заявляют это право на своем веб-сайте. Однако они работают над этим.

  • Добавьте в файл composer.json следующий файл в разделе require.

    "cartalyst/sentry": "dev-feature/laravel-5",
    "illuminate/html": "~5.0"
    

Добавьте в раздел автозагрузки следующее.

"app/Http/Controllers",

Он должен выглядеть примерно так:

"require": {
    "laravel/framework": "5.0.*",
    "cartalyst/sentry": "dev-feature/laravel-5",
    "illuminate/html": "~5.0"
},
"require-dev": {
    "phpunit/phpunit": "~4.0",
    "phpspec/phpspec": "~2.1"
},
"autoload": {
    "classmap": [
        "database",
        "app/Classes",
        "app/Http/Controllers",
        "app/Models"
  1. (Предположим, linux без псевдонимов) Запустите php composer.phar dump-autoload, затем обновление php composer.phar

  2. Следуйте инструкциям на следующей странице, чтобы конвертировать ваши файлы с 4.2 до 5.0: http://laravel.com/docs/master/upgrade#upgrade-5.0

  3. Если вы используете HTML-фасад для FORMS, измените {{{}}} или {{}} для FORM на {!!!!}, поскольку L5 выходит из всех результатов из {{{}}} и {{}}. Если вы хотите сырой выход, вы должны использовать {!!!!}.

  4. Когда вы переместите проверку перенаправления на метод загрузки в соответствии с инструкциями в №4, добавьте следующее в начало RouteServiceProvider.php

    использовать Cartalyst\Sentry\Facades\Laravel\Sentry;

Метод загрузки должен выглядеть примерно так:

public function boot(Router $router)
    {
        parent::boot($router);
        // Check if someone is already logged in
        Route::filter('members_auth',function(){
        //If already logged in go to dashboard or else login
            if(!Sentry::check()){
                return Redirect::to('/login');
            }
        });

        //
    }

ОБНОВЛЕНИЕ 02-26-15

  1. Не запускайте команду оптимизировать php artisan, так как она сломает часовой. Я не мог понять, что было не так после того, как я это запустил, но подумал, что, вероятно, это должно быть с файлом compiled.php, поэтому я запустил php artisan optimize -force и исправил все, что было.

Надеюсь, что это поможет.

Уэйн Лейзер, И.Т. Директор

B2B I.T. Решения

Ответ 2

Я лично не установил его, но я знаю, что он совместим. https://medium.com/@Cartalyst/laravel-5-support-4c11e01c3337

В инструкциях по установке нет конкретной информации Laravel5, хотя она должна быть идентичной L4, пока вы не потянете правильную ветку. Предполагая, что вы используете композитор, вы можете сделать это, требуя "cartalyst/sentry": "dev-feature/laravel-5" в вашем composer.json.

Следуйте остальной части установки L4 (добавьте в массив поставщиков и псевдонимов) и информацию, за исключением того, что app.php больше не находится в app/config/app.php, а в config/app.php

Если вы все еще не работаете, обязательно обновите свой вопрос, по крайней мере, с некоторой информацией...

Ответ 3

bootstarpCms использует как laravel5, так и часовой, поэтому вы можете прочитать исходный код, чтобы узнать .here https://github.com/BootstrapCMS/CMS

Ответ 4

Попробуйте Sentinel: https://github.com/rydurham/Sentinel

добавить в композитор

composer require rydurham/sentinel

В config/app.php

'providers' => array(
    ...
    'Sentinel\SentinelServiceProvider', 
    ...
)

В приложении /Http/Kernel.php

protected $routeMiddleware = [
    // ..
    'sentry.auth' => 'Sentinel\Middleware\SentryAuth',
    'sentry.admin' => 'Sentinel\Middleware\SentryAdminAccess',
];

затем

опубликовать конфигурацию:

php artisan sentinel:publish

выполнить миграции:

php artisan migrate

Запустить сеялку:

php artisan db:seed --class=SentinelDatabaseSeeder

добавить домашний маршрут в app/routes.php

 Route::get('/', array('as' => 'home', function()
{
    return View::make('home');
}));

все сделано, перейдите к myapp.dev/login