【问题标题】:laravel Route::resource not working for deletelaravel Route::resource 不能用于删除
【发布时间】:2019-12-13 17:09:32
【问题描述】:

Laravel Route::resource('countries', 'CountriesController'); 现在为 DELETE 工作

仅作为(单独)Route::delete('/countries/{country}/delete', 'CountriesController@destroy');工作

<div class="row">
    <div class="col-12">
        <h1>Details for {{ $country->countryName }}</h1>
        <p><a href="/countries/{{ $country->id }}/edit">Edit</a></p>

        <form action="/countries/{{ $country->id }}/delete" method="post">
            <input name="_method" type="hidden" value="DELETE">
            @method('DELETE')
            @csrf
            <button type="submit" class="btn btn-danger">Delete1</button>

        </form>
    </div>
</div>

不工作,我被困在网址: http://192.168.1.7:8000/countries/6/delete

说“404|未找到”

【问题讨论】:

    标签: laravel routes resources destroy


    【解决方案1】:

    您无需在 URL 中附加 /delete

    试试这个:

    <form action="/countries/{{ $country->id }}" method="post">
        @method('DELETE')
        @csrf
        <button type="submit" class="btn btn-danger">Delete1</button>
    </form>
    

    正如@nakov 所提到的,您还可以删除隐藏的输入字段。刀片指令@method('DELETE') 足以完成这项工作。

    希望对你有帮助!

    【讨论】:

    • 而且不需要隐藏输入,刀片指令就足够了。
    • 工作得很好。谢谢!
    猜你喜欢
    • 2016-02-18
    • 2014-06-23
    • 1970-01-01
    • 2019-06-14
    • 1970-01-01
    • 2014-06-23
    • 2013-10-06
    • 1970-01-01
    • 2018-02-17
    相关资源
    最近更新 更多