首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RouteCollection.php第218行中的MethodNotAllowedHttpException : laravel 5.4

RouteCollection.php第218行中的MethodNotAllowedHttpException : laravel 5.4
EN

Stack Overflow用户
提问于 2017-08-16 13:32:16
回答 3查看 484关注 0票数 1

我想添加一个表单新的法律细节,这个表单有两个按钮,如更新和取消。

当我点击cancel按钮时,表单被取消并被重定向到上一页,当我点击update按钮而没有填写表单细节时,它会要求验证。

在填写完所有需要的表单细节后,当我点击update按钮时,它在RouteCollection.php第218行抛出错误MethodNotAllowedHttpException:

我的表单是:

代码语言:javascript
复制
{!! Form::open(array('url' => 'admin/companymaster/updateLocation', 'id'=>'updatelocations', 'class' => 'form-horizontal create_form', 'files' => true)) !!}
<input type="hidden" value="{{$value->id}}" name="company_master_id">
<div id="sublaws_content1"></div>
<div id="save" style="display:none; margin-bottom: 20px;">
<button type="submit" class="btn btn-success" id="senddatepicker">Update</button>
<a class="btn red" href="{{ URL::to('admin/companymaster/'.$company_master->id) }}">Cancel</a>
</div>
</form>

我的路线是:

代码语言:javascript
复制
Route::post('admin/companymaster/updatelocations', 'CompanyController@updateLocation');

我的控制器是:

代码语言:javascript
复制
public function updateLocation(){
        //dd(Input::all());
        /*Insert Company Law Details*/
        $companydetails_id = Input::get('company_master_id');
        $company_sub_laws = Input::get('company_sub_laws');
        if($company_sub_laws!="")
        {
            $cld=0;
            foreach($company_sub_laws as $rescompany_sublaws)
            {
                if($companydetails_id!="" && $rescompany_sublaws!="")
                {

                    $law_reg_no = $_POST['law_reg_no'];
                    $sub_law_start_date = $_POST['sub_law_start_date'][$cld];
                    $sub_law_end_date = $_POST['sub_law_end_date'][$cld];

                    $companylawdetails = new CompanyLawDetails;
                    $companylawdetails->company_master_details_id = $companydetails_id;
                    $companylawdetails->company_sub_law_id = $rescompany_sublaws;
                    $companylawdetails->law_reg_no = $law_reg_no;
                    $company_sub_law_start_date = $sub_law_start_date;
                    $company_sub_law_end_date = $sub_law_end_date;

                    if($company_sub_law_end_date!="")
                    {
                        $res_company_sub_law_end_date=explode("-",$company_sub_law_end_date);
                        $company_sub_law_end_date=$res_company_sub_law_end_date[2]."-".$res_company_sub_law_end_date[1]."-".$res_company_sub_law_end_date[0];

                        $companylawdetails->law_end_date = $company_sub_law_end_date;
                    }
                    if($company_sub_law_start_date!="")
                    {
                        $res_company_sub_law_start_date=explode("-",$company_sub_law_start_date);
                        $company_sub_law_start_date=$res_company_sub_law_start_date[2]."-".$res_company_sub_law_start_date[1]."-".$res_company_sub_law_start_date[0];
                        $companylawdetails->law_start_date = $company_sub_law_start_date;
                    }

                    $companylawdetails->save();

                }
                $cld++;
            }
        }

        $sublaws = CompanyLawDetails::where('company_master_details_id',$companydetails_id)->select('company_sub_law_id')->get()->toArray();
        $sublaws = join(",",array_column($sublaws,'company_sub_law_id'));

        $update = CompanyDetails::where('id',$companydetails_id)->update(['company_sub_laws' => $sublaws]);
        //return Redirect::back();
    }

当我通过单击更新按钮提交表单时,我得到一个错误页面,如下所示:

有人能帮我解决这个问题吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-08-16 14:17:46

看起来你走错了路线,而且你在url上有一个错误,试试这个方法;

代码语言:javascript
复制
Route::post('admin/companymaster/updatelocations', ['uses'=>'CompanyController@updateLocation',
'as'=>'upload.locations']);

on your blade 


{!! Form::open(array('route'=> 'upload.locations', 'method'=>'post', 'id'=>'updatelocations', 'class' => 'form-horizontal create_form', 'files' => true)) !!}
<input type="hidden" value="{{$value->id}}" name="company_master_id">
<div id="sublaws_content1"></div>
<div id="save" style="display:none; margin-bottom: 20px;">
<button type="submit" class="btn btn-success" id="senddatepicker">Update</button>
<a class="btn red" href="{{ URL::to('admin/companymaster/'.$company_master->id) }}">Cancel</a>
</div>
</form>
票数 1
EN

Stack Overflow用户

发布于 2017-08-16 13:36:51

请将表单方法添加为'method' => 'post',

代码语言:javascript
复制
{!! Form::open(array('url' => 'admin/companymaster/updateLocation', 'id'=>'updatelocations', 'class' => 'form-horizontal create_form', 'files' => true,'method' => 'post')) !!}

希望你能理解。

票数 0
EN

Stack Overflow用户

发布于 2017-08-16 13:47:26

拼写错误更改url表单

代码语言:javascript
复制
{!! Form::open(array('url' => 'admin/companymaster/updateLocation', 'id'=>'updatelocations', 'class' => 'form-horizontal create_form', 'files' => true)) !!}

代码语言:javascript
复制
 {!! Form::open(array('url' => 'admin/companymaster/updatelocations', 'id'=>'updatelocations', 'class' => 'form-horizontal create_form', 'files' => true)) !!}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45705733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档