【问题标题】:Calling same route on submit在提交时调用相同的路由
【发布时间】:2020-04-19 04:03:58
【问题描述】:

我不知道为什么我会遇到这个问题。 我有一个表,我在其中调用了新路由来打开一个更新视图

 Route::get('update_view/{id}', ['as' => 'update_view', 'uses' => 'admin\study_material\StudyMaterialController@update_view']);

提交后,路由下面的表单被调用

Route::post('update/{id}', ['as' => 'update', 'uses' => 'admin\study_material\StudyMaterialController@update']);

现在,问题是当更新页面被调用时,它会正确显示更新页面,但是当提交表单时,我收到错误,不允许使用 post 方法。使用 Get 或 Put。但我检查了 url,它显示了 update_view/ 3 而不是 update/3。

Route::group(['prefix' => 'StudyMaterial', 'as' => 'StudyMaterial.'], function () {
    Route::get('view', ['as' => 'view', 'uses' => 'admin\study_material\StudyMaterialController@view']);
    Route::get('add', ['as' => 'add', 'uses' => 'admin\study_material\StudyMaterialController@add_view']);
    Route::post('add_studyMaterial', ['as' => 'add_studyMaterial', 'uses' => 'admin\study_material\StudyMaterialController@add']);
    Route::get('update_view/{id}', ['as' => 'update_view', 'uses' => 'admin\study_material\StudyMaterialController@update_view']);
    Route::post('update/{id}', ['as' => 'update', 'uses' => 'admin\study_material\StudyMaterialController@update']);
});

我的表格:

<form action="{{ route('StudyMaterial.update',$data[0]->id) }}" method="POST" class="text-center" enctype="multipart/form-data">
  {{csrf_field()}}
  <input type="hidden" name="_token" id="_token" value="{{ csrf_token() }}">
<button type="submit>Update</button>
</form>

生成的网址:

  1. 查看表格以更新文件 => localhost/project/public/StudyMaterial/update_view/13
  2. 重定向 URL 以将表单提交到控制器 => localhost/project/public/StudyMaterial/update/13

提交表单后应该生成 URL 2。但这里只显示 URL 1,它是 GET 方法。 这发生在我的整个项目中。 提前谢谢你

【问题讨论】:

  • 尝试在表单中添加@method('POST')
  • 更改路线顺序。首先Route::post('update/{id}'.... 然后Route::get('update_view/{id}'...

标签: laravel


【解决方案1】:

试试这个:

<form action="{{ route('StudyMaterial.update',$data[0]->id) }}" method="POST" class="text-center" enctype="multipart/form-data">
  @csrf
  <button type="submit>Update</button>
</form>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-03
    • 1970-01-01
    • 1970-01-01
    • 2018-10-20
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多