Laravel по-русски

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

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

#1 21.02.2016 16:09:45

Новый формат маршрутов в laravel

Всем привет. Несколько дней назад поставил текущую версию laravel (5.0.16), где в routes.php маршруты прописывались, как всегда:

Route::get('/', 'TestController@index');

Только что поставил еще раз laravel, на этот раз пришла версия 5.2.20 и там маршруты прописываются так:

Route::get('/', function () {
});

По-старому выдает ошибку, что так уже нельзя. У меня два вопроса:

1. Почему так кардинально меняют базовые подходы, не сохраняя работоспособность старых?
2. Как быть с работоспособностью кода предыдущих версий, когда обновляем laravel?

Спасибо.

Изменено L_E_L_I_K (21.02.2016 16:10:25)

Не в сети

#2 21.02.2016 16:17:55

Re: Новый формат маршрутов в laravel

Насчет обратной совместимости они не особо парятся ))
В этом есть свои плюсы, не тянут старое наследие, как некоторые.

Обычно  все шаги по апгрейду описаны
https://laravel.com/docs/5.2/upgrade

Не в сети

#3 21.02.2016 16:48:42

duster
Откуда: Мельбурн
Сообщений: 148

Re: Новый формат маршрутов в laravel

Способов несколько, и насколько я помню - оба упомянутых способа до сих пор действуют

В 5.2 только вынесли все стандартные middleware в группу (по дефолту не загружаются), больше ничего в маршрутизации не менялось

Не в сети

#4 21.02.2016 19:45:38

Re: Новый формат маршрутов в laravel

Спасибо за ответы. В документации не написано, что в роутинге такие изменения, видимо, сочли, что это очевидно будет по примерам. По второму ответу - не действуют. Иначе бы я не написал )

Не в сети

#5 21.02.2016 20:11:18

Re: Новый формат маршрутов в laravel

А где вы вообще такой роутинг откопали? Не вижу примеров такого роутинга  в документации даже по 4.2

Не в сети

#6 22.02.2016 02:00:43

Re: Новый формат маршрутов в laravel

Если поставить свежий laravel, в роутинге будет такой маршрут, с функцией. Причем, только он, авторизация, как пример, убрана. Если поставить такой:

php composer.phar create-project laravel/laravel=5.0.* --prefer-dist

то будет еще старый метод.

И еще в новом (5.2.*) laravel:

php artisan make:controller TestController

Создает совсем пустой контроллер, уже не подготавливает "стандартные" методы типа "index", "destroy" и пр. А просто создает файл и класс, даже без индексного. Не думаю, что это критично, но все же решил поделиться.

И да, старый метод все-таки работает на новом, я прошу прощения.

Не в сети

#7 22.02.2016 06:37:47

duster
Откуда: Мельбурн
Сообщений: 148

Re: Новый формат маршрутов в laravel

L_E_L_I_K пишет:

Создает совсем пустой контроллер, уже не подготавливает "стандартные" методы типа "index", "destroy" и пр. А просто создает файл и класс, даже без индексного. Не думаю, что это критично, но все же решил поделиться.

И да, старый метод все-таки работает на новом, я прошу прощения.

Он по дефолту просто не создает эти RESTful методы. Там надо параметр добавить - и он их создаст

Не в сети

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