Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Пробую использовать route на кириллице и он работает без проблем:
Route::resource('франшизы/подкатегории', 'Franch\SubCategoryController');
Когда же я пытаюсь использовать формы, при отправке формы получаю ошибку NotFoundHttpException in RouteCollection.php line 161 exception:
// Генерирует: http://localhost:8000/франшизы/подкатегории/20/edit?
{!! Form::open(array('method' => 'Get', 'route' => array('франшизы.подкатегории.edit', $subCategory->id))) !!}
Если же копи-пастом создать новый route и новую форму с использованием только латиницы, то все работает как надо:
// Генерирует: http://localhost:8000/franch/sub/20/edit?
{!! Form::open(array('method' => 'Get', 'route' => array('franch.sub.edit', $subCategory->id))) !!}
Route::resource('franch/sub', 'Franch\SubCategoryController');
Подскажите, как заставить работать генерацию route с кириллицей в формах Laravel Collective? Если это нереально, как обойти это наиболее грамотно?
Не в сети
Я задал этот вопрос на четырех форумах, но никто так и не смог помочь. Возможно, есть более элегантное решение, но пока что я решил вопрос так:
Route::get('франшизы/подкатегории', 'Franch\SubCategoryController@index')->name('franch_sub_categories_index');
Route::resource('franchises/subcategories', 'Franch\SubCategoryController', ['except' => ['index']]);
Первый route обслуживает простые запросы (браузер, переход по ссылке), что важно в первую очередь для SEO. Второй route обслуживает все остальные RESTful запросы.
Возможно, кому-то пригодится.
Не в сети