错误消息说明:“此路由不支持GET方法。受支持的方法:POST”在更新时使用Laravel

时间:2020-02-14 14:02:24

标签: php laravel

我试图通过按刀片中的提交按钮来获取表单数据的值,以路由具有耐心/更新的路由名称。我正在尝试使用$request在控制器上测试var_dump()对象。但是,出现错误消息

“此路由不支持GET方法”。

我尝试从获取切换为发布。但是我仍然不知道背后的错误是什么。

这是我在刀片服务器上的代码;

<form class="" action="{{ route('patient/update') }}" metdod="post">
    @csrf
    <nav class="nav">
        <a href="{{ route('home') }}">
            <button class="btn btn-secondary mr-2 mb-2" type="button" name="button">Home</button>
        </a>
        <input type="submit" class="btn btn-primary mb-2" name="save" value="Save">
    </nav>
    <table class="table">
        <tr>
            <td>
                <label class="text-primary">Fullname</label>
                <input class="form-control" type="text" name="fullname" value="{{ $patient->fullname }}" />
            </td>
            <td>
                <label class="text-primary">Date of birth</label>
                <input class="form-control" type="date" name="date_of_birth" value="{{ $patient->date_of_birth }}" />
            </td>
            <td>
                <label class="text-primary">Sex</label>
                <input class="form-control" type="text" name="sex" value="{{ $patient->sex }}" />
            </td>
            <td>
                <label class="text-primary">Birth weight</label>
                <input class="form-control" type="text" name="birth_weight" value="{{ $patient->birth_weight }}" />
            </td>
            <td>
                <label class="text-primary">Birth length</label>
                <input class="form-control" type="text" name="birth_length" value="{{ $patient->birth_length }}" />
            </td>
        </tr>
        <tr>
            <td colspan="2">
                <label class="text-primary">Birth History</label>
                <textarea class="form-control" name="birth_history" rows="3" cols="30">{{ $patient->history }}</textarea>
            </td>
            <td colspan="2">
                <label class="text-primary">Feeding: </label>
                <textarea class="form-control" name="feeding" rows="3" cols="30">{{ $patient->feeding }}</textarea>
            </td>
            <td colspan="2">
                <label class="text-primary">screening_date: </label>
                <input class="form-control" type="date" name="screening_date" value="{{ $patient->screening_date }}" />
            </td>
        </tr>
        <tr>
            <td colspan="2">
                <label class="text-primary">Home Address</label>
                <textarea class="form-control" name="home_address" rows="3" cols="30">{{ $patient->home_address }}</textarea>
            </td>
        </tr>
        <tr>
            <td>
                <label class="text-primary">Mother's name</label>
                <input class="form-control" type="text" name="mother_name" value="{{ $patient->mother_name }}" />
            </td>
            <td>
                <label class="text-primary">Age</label>
                <input class="form-control" type="text" name="mother_age" value="{{ $patient->mother_age }}" />
            </td>
            <td>
                <label class="text-primary">Occupation</label>
                <input class="form-control" type="text" name="mother_occupation" value="{{ $patient->mother_occupation }}" />
            </td>
            <td>
                <label class="text-primary">Contact No.</label>
                <input class="form-control" type="text" name="mother_cp" value="{{ $patient->mother_cp }}" />
            </td>
            <td>
                <label class="text-primary">TT Status</label>
                <input class="form-control" type="text" name="mother_tt_status" value="{{ $patient->mother_tt_status }}" />
            </td>
        </tr>
        <tr>
            <td>
                <label class="text-primary">Father's Name</label>
                <input class="form-control" type="text" name="father_name" value="{{ $patient->father_name }}" />
            </td>
            <td>
                <label class="text-primary">Age</label>
                <input class="form-control" type="text" name="father_age" value="{{ $patient->father_age }}" />
            </td>
            <td>
                <label class="text-primary">Occupation</label>
                <input class="form-control" type="text" name="father_occupation" value="{{ $patient->father_occupation }}" />
            </td>
            <td>
                <label class="text-primary">Contact No.</label>
                <input class="form-control" type="text" name="father_cp" value="{{ $patient->father_cp }}" />
            </td>
        </tr>
    </table>
    <input type="submit" class="btn btn-primary m-2 " name="save" value="Save">
</form>

这是我的路线;

Route::post('/patient/update', 'PatientController@update')->name('patient/update');

这是我的控制器;

public function update(Request $request)
{
    var_dump($request);
}

有人可以向我解释为什么会发生此错误吗?

谢谢,如果可以,请告诉我解决方案!

2 个答案:

答案 0 :(得分:3)

问题出在Blade文件的第一行,其中您拼写了“方法”:

<form class="" action="{{ route('patient/update') }}" metdod="post">
                                                      ^^^^^^

method标记中没有有效的form属性,该请求将默认为GET

答案 1 :(得分:1)

好像您拼写了单词method一样,您有metdod="post"应该是method="post"