bricks
@bricks

Laravel MethodNotAllowedHttpException in RouteCollection.php (line 251) в URL ?id?

искал решение, много есть обсуждений с этой проблемой, но моего случая не нашёл(может устал)
на странице есть кнопка
<p><a class="btn btn-default" href="{{route('admin_update_post',['id'=>$article->id])}}" role="button">Редактировать статьи ADMIN &raquo;</a></p>

Обрабатывающий роут ( php artisan route:list при выполнение команды всё ок, такой путь есть и кэш путей чистил)
Route::group(['prefix'=>'admin','middleware'=>['web','auth']],function (){
    //admin/
    Route::get('update/{id}', 'Admin\AdminPostController@showUp')->name('admin_update_post');
    Route::post('/update',['uses'=>'Admin\AdminPostController@saveUp', 'as'=>'admin_update_post']);
});

код showUP
public function showUp($id){
        $article = Article::select(['id','title','text','alias'])->where('id',$id)->firstOrFail();
        return view('add_editing_pages.update_post',['title'=>'Редактирование материала','article'=>$article])->with(['message'=>$this->message,
            'header'=>$this->header
        ]);
    }

сама ошибка при клики на кнопу вылетает MethodNotAllowedHttpException
in RouteCollection.php (line 251) а в url /admin/update?id=34
  • Вопрос задан
  • 256 просмотров
Решения вопроса 1
neuotq
@neuotq
Прокрастинация
Ошибка элементарная. В ссылке Редактировать статьи ADMIN, ты используешь автогенерацию ура по имени: admin_update_post, имя это ты определяешь вначале для get роута, а потом его же переопределяешь для пост. Короче говоря, перепиши это:
Route::post('/update',['uses'=>'Admin\AdminPostController@saveUp', 'as'=>'admin_update_post']);

в
Route::post('update/{id}', 'Admin\AdminPostController@saveUp');
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы