Laravel по-русски

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

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

#1 08.07.2015 20:44:45

Проблема с порядком обработки маршрутов

Здравствуйте, столкнулся с такой проблемой, в файле маршуртов прописаны такие правила

Route::get('/', 'ObjectsController@index');
Route::get('objects/{id}', 'ObjectsController@show');
Route::get('objects/create', 'ObjectsController@create');

В туториалах смотрю так используют и вроде все ок, но у меня не отрабатывает третье правило, даже если вбить в адресной строке sitename.com/objects/create срабатывает второе правило (Route::get('objects/{id}', 'ObjectsController@show');). Если это правило закомментировать, то третье начинает корректно работать. В чем может быть проблема?

Не в сети

#2 08.07.2015 21:59:58

Artdevue
Откуда: Kiev
Сообщений: 119
Сайт

Re: Проблема с порядком обработки маршрутов

поменяйте местами 2 и 3 строчку, или второй задайте правило, что id только цифра

Route::get('objects/{id}', 'ObjectsController@show')->where('id', '[0-9]+');

If you think it’s expensive to hire a professional to do the job, wait until you hire an amateur.

Не в сети

#3 08.07.2015 22:42:10

Re: Проблема с порядком обработки маршрутов

ясно, спасибо
тогда у меня сразу возник еще один вопрос. С id все понятно, но если вдруг я надумаю вместо id использовать алиасы, что-то типа Route::get('objects/{slug}') то придется всегда следить за тем чтобы такие правила были в конце? Так как регулярка для алиаса будет захватывать не только цифры.

Не в сети

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