2017-02-16 9 views
1

Laravel newbie here, я хочу создать маршрут обновления в Laravel без контроллера ресурсов. У меня есть маршрут для редактированияМаршрут обновления Laravel

Route::get('/indexedit','[email protected]')->middleware('user'); 

И там, есть форма со следующим

<form class="col s12" method="POST" action="indexedit/{{ $val->id }}" > 
{{ method_field('PUT') }} 
{{ csrf_field() }} 

Есть два поля ввода и кнопка для завершения заполнения. Я создал маршрут для обновления, который составляет

Route::post('indexedit/{$id}', '[email protected]'); 

Но когда я отправляю, он говорит, что маршрут не найден. NotFoundHttpException в RouteCollection.php линии 161:

+0

Маршрут :: любой ('/ indexedit/{id}', 'PagesController @ update'); попробуйте. – Sona

+0

Просто попробовал, возвращает то же самое. –

ответ

3

Прежде всего, вам не нужно знак $ в маршруте (Documentation):

Route::post('indexedit/{id}', '[email protected]'); 

Во-вторых, я бы обернуть URL действия в URL() метод на всякий случай:

<form class="col s12" method="POST" action="{{ url('indexedit/ ' . $val->id }}" > 
+0

Спасибо, это работает! –

+0

Ошибка была указателем $ на маршруте, но я также буду использовать метод url(). –

+0

Да, я знаю, но ИМХО это хорошая практика, чтобы обернуть все URL-адреса в этом методе :) – Laran

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