2017-01-30 5 views
0

В Laravel 5.1, я был в состоянии получить путь маршрута по имени маршрута, например:Получить шаблон маршрута по имени маршрута в Laravel 5.3

Defined Маршрут:

Route::post('users/{user_id}/delete', '[email protected]')->name('user:delete'); 

В Laravel 5.1, когда Я попробовал метод ниже, он дал маршрут без ошибок Если я не пропускал ни параметр маршрута:

route('user:delete'); // Output: http://example.com/users/%7Buser_id%7D/delete 

, а затем в JavaScript, я просто заменил% 7Buser_id% 7D с идентификатором пользователя динамически. Но laravel 5.3 бросает ошибку при доступе к маршруту по имени, у которого есть параметры, и я не хочу его передавать, потому что параметры динамически задаются из javascript.

Есть ли способ, что я могу получить доступ к шаблону маршрута по имени маршрута, как:

http://example.com/users/{user_id}/delete 

Или

/users/{user_id}/delete 

Заранее спасибо.

+0

Убедитесь, что параметр установлен до получения доступа к URL. – Onix

ответ

1

Вы можете указать некоторое значение некоторого значения route, которое будет заменено в javascript. Например: route('user:delete', 'USER_ID'), затем в javascript вы просто замените USER_ID.

или лучший способ, чтобы использовать пакет под названием "Laroute"

+0

Как пользователь 'Laroute' с маршрутами dingo api? –

+0

Вы можете использовать 'Laroute' на каждом маршруте, который имеет имя. В вашем случае вот так: 'laroute.route ('user: delete', {user_id: 1});' – zgabievi

+0

Я попытался сгенерировать файл js, но он содержит только маршруты, определенные в файле 'web.php', но doesn 't включают маршруты, написанные на 'api.php', может быть, это не значит, потому что я использую' dingo routes'. –

Смежные вопросы