Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 11.10.2016 09:52:08

Замена провайдеров фасадами в L5.3

Приветствую всех!
Перешел на L5.3. Не работает удаление новостей, т.к. выдает ошибку:

ErrorException in RouteServiceProvider.php line 8:
Declaration of App\Providers\RouteServiceProvider::boot(App\Providers\Router $router) should be compatible with Illuminate\Foundation\Support\Providers\RouteServiceProvider::boot()

Естественно, в RouteServiceProvider от 5.2 осталось:

public function boot(Router $router)
    {
        parent::boot(); 
		$router->model('post', 'App\Post');
    }

Прочитал документацию к L5.3, она гласит следующее:

You may remove the arguments from the boot method on the EventServiceProvider, RouteServiceProvider, and AuthServiceProvider classes. Any calls to the given arguments may be converted to use the equivalent facade instead.

Получается я должен от метода boot() оставить:

public function boot()
    {
        parent::boot();
    }

А все остальное реализовать в фасаде. Мучаюсь второй день, не понимаю как реализовать и куда этот фасад подключать. В итоге, должна совершаться проверка на возможность совершения пользователем действия удаления новости и срабатывать метод destroy() в контроллере PostController:

public function destroy(Request $request, Post $post)
	{
		$this->authorize('destroy', $post);
		$post->delete();
		return redirect('/brcp');
	}

Прошу вашей помощи ув.разработчики.

Изменено MMysiv (11.10.2016 09:52:50)

Не в сети

#2 18.10.2016 15:52:43

Re: Замена провайдеров фасадами в L5.3

ecли я вас правильно понял..

public function boot()
{
    parent::boot();

    Route::model('user', App\User::class);
}

https://laravel.com/docs/5.3/routing

Изменено Sazhin (18.10.2016 15:54:39)

Не в сети

#3 18.10.2016 17:43:44

Re: Замена провайдеров фасадами в L5.3

людям дай отвёртку - от нечего делать чужой танк вскроют, после чего он сможет только плавать и то вертикально.

Не в сети

#4 08.11.2016 16:20:35

Re: Замена провайдеров фасадами в L5.3

Не работает такая конструкция bind в 5.3. Ошибки не выдает, но привязка не работает.

    public function boot()
    {
        parent::boot();

        Route::bind('articles', function ($id) {
            return \App\Article::published()->findOrFail($id);
        });

    }

В чем может быть дело? Как понять что происходит?

Не в сети

#5 08.11.2016 21:12:25

Re: Замена провайдеров фасадами в L5.3

Извиняюсь, ошибся в привязке 'article' вместо 'articles'. Вопрос снимается.

Не в сети

Подвал раздела